2010-06-28 5 views
0

Je rencontre des problèmes réels avec un groupe de Radiobuttons HTML lorsque j'essaie de passer les valeurs sélectionnées entre JavaScript et ASP.NET.HTML Valeurs de radiobuton dans ASP.NET

<input type="radio" id="radio1" name="markerSel" value="1" checked=true /> 
<input type="radio" id="radio2" name="markerSel" value="2" /> 
<input type="radio" id="radio3" name="markerSel" value="3" /> 

Pour commencer, le formulaire est chargé avec ces boutons radio et un utilisateur sélectionne une valeur et soumet le formulaire ASP.NET. Pour obtenir la valeur de l'option sélectionnée du côté serveur j'ai essayé;

string selVal = Request.Form["markerSel"]; 
//always returns "1", regardless of the selection made. 

Et aussi essayé la méthode FindControl de ASP.NET (récursive aussi), et je viens d'obtenir nulle.

Je veux être en mesure de définir la valeur de ce groupe de radiobutton via JavaScript et Asp.NET et être capable de lire à partir des deux environnements.

Toute aide serait appréciée.

Merci

Répondre

1

Y at-il une raison pour laquelle vous n'utilisez les boutons radio ASP.NET au lieu de <input type=radio />?

Si vous utilisez

<asp:RadioButton id="radio1" runat="server" Checked="true" /> 
<asp:RadioButton id="radio2" runat="server" /> 
<asp:RadioButton id="radio3" runat="server" /> 

Vous pourrez y accéder côté serveur en faisant this.radio1.Checked

Si vous souhaitez accéder à vos éléments via javascript, vous pouvez faire un document.getElementById('radio1') et vous obtiendrez l'élément DOM de cette façon.

Si vous voulez utiliser jQuery, vous pouvez accéder aux boutons radio avec

$('#radio1') 

Si vous voulez tester si le bouton radio est cochée, vous pouvez utiliser

if ($("#radio1").is(':checked')) {//... 
+0

Merci Hugo, j'ai essayé d'utiliser asp: RadioButton. Mais pour une raison quelconque, JQuery UI ne fonctionnait pas bien avec ça. Il n'a jamais paru correct, mais je l'ai maintenant trié en utilisant la syntaxe <% = checkedVal%> dans le code HTML. – Sivakanesh

1

hmmm .. Je voudrais essayer de changer la ligne à:

string selVal = Request.Form("markerSel"); 
Questions connexes