我想在JQuery中获取.NET下拉列表的值,但我只能获取选定项目的ID,而不是选定的值。是否有可能做到这一点?这是我当前的代码,它获取所选项目的ID:使用jQuery从.NET下拉菜单中获取选定的值
alert($('#<%=ddlReportPeriods.ClientID %>').val());
我想在JQuery中获取.NET下拉列表的值,但我只能获取选定项目的ID,而不是选定的值。是否有可能做到这一点?这是我当前的代码,它获取所选项目的ID:使用jQuery从.NET下拉菜单中获取选定的值
alert($('#<%=ddlReportPeriods.ClientID %>').val());
尝试
alert($('#<%=ddlReportPeriods.ClientID %> option:selected').text());
这是可以工作的语法,虽然有一个错字,它应该是:alert($('#<%= ddlReportPeriods.ClientID% > option:selected')。text()); – user517406 2011-05-19 13:36:25
高兴地帮助:) – Devjosh 2011-05-19 13:41:14
感谢发布! – user517406 2011-05-19 15:15:30
如果是同一个普通的HTML下拉框,你可以尝试
$('#<%=ddlReportPeriods.ClientID %> option:selected').val()
语法错误,无法识别的表达式:#<%= contactStateDDL.ClientID%>选项: – JSON 2016-09-15 13:31:06
如果您想要的是<select>
元素下当前选择的<option>
标签的文本内容,那么您可以这样做:
var $sel = $('#<%=ddlReportPeriods.ClientID %>');
alert($($sel.attr('options')[$sel.attr('selectedIndex')).text());
编辑 —其他的答案与建议使用“:选择”预选赛是比这更好的...
试试这个:
alert($('#<%=ddlReportPeriods.ClientID %> OPTION:selected').val());
您可以设置的属性ASP.NET控件在运行时不会更改ID,即
ClientIDMode = "Static"
然后尝试,
alert($("#ddlReportPeriods option:selected").val());
<asp:DropDownList ID="ddMainMenuList" runat="server" class="form-control">
</asp:DropDownList>
$("[id*=ddMainMenuList]").val("SomeValue");
这是你可以指定某个值到下拉或文本框或任何其他ASP的控制方式。只是你必须提到“身份证”。
问题要求获得价值的解决方案,而不是改变它。 – 2016-01-09 03:58:25
该代码确实获得了元素的值,而不是id。使用类似Firebug或开发者控制台来检查您的实际页面。也许你想在你的下拉列表中选择'