asp.net passant des valeurs de JS / jquery au code derrière c #

J’ai essayé “toutes” les manières possibles d’envoyer le screen.width vlaue du script JS de la page aspx au c # dans le code derrière et si je peux voir que screen.width est correctement assigné, il n’est jamais assigné à mon champ caché valeur.

   $(function(){ $('#hiddenfield').val(screen.width); });  other content  

et le code derrière:

 protected void btnChartGo_Click(object sender, EventArgs e) { ssortingng s = hiddenfield.Value; } 

Peu importe ce que j’essaie, c’est toujours “”

Quelque chose ne va pas avec ce qui précède, tout le monde semble le faire comme ça et ça marche?

Cela devrait avoir le bon sélecteur:

 $('#<%= hiddenfield.ClientID %>').val(screen.width); 

L’ID du champ caché rendu n’est pas “hiddenfield” – ce sera quelque chose comme ctl00_bodycontent_hiddenfield.

Essayez d’utiliser

 $('[id$="hiddenfield"]') 

comme sélecteur à la place.

   

Assurez-vous que le mode ID client de votre champ masqué est statique si vous utilisez ASP.NET 4 ou utilisez

 $('#<%= hiddenfield.ClientID %>').val(screen.width); 

Vérifiez la source d’affichage de la page et trouvez le bon identifiant de l’élément, puis utilisez le sélecteur jquery dessus puis, lors du chargement de la page, vérifiez la collection request.form pour vérifier si la variable cachée arrive ou non dans la demande de publication.