有这样一个问题,要获取ASP.NET控件RadioButtonList的值,首先想到的就是$("#<%=RadioButtonList1.ClientID %>").val();结果返回为空。于是在浏览器查看HTML文本:
发现RadioButtonList和CheckBoxList都被解析为Table,并且每个子项由一个radio(checkbox)和label构成,label保存文本信息。
于是想到了下面的方法:
1 $(document).ready(function () { 2 3 $("#btnSelRadioList").click(function () { 4 var sValue = $("#<%=RadioButtonList1.ClientID %>").find("input[type='radio']:checked").val(); 5 var sText = $("#<%=RadioButtonList1.ClientID %>").find("input[type='radio']:checked").next().text() 6 7 alert(sValue + "|" + sText); 8 }); 9 10 $("#btnSelCheckBoxList").click(function () { 11 var sValue = ""; 12 var sText = ""; 13 $("#<%=CheckBoxList1.ClientID %>").find("input[type='checkbox']:checked").each(function () { 14 sValue += $(this).val() + ";"; 15 sText += $(this).next().text() + ";"; 16 }) 17 18 alert(sValue + "|" + sText); 19 }); 20 });