Ответ 1
попробовать
alert($('#<%=ddlReportPeriods.ClientID %> option:selected').text());
Я пытаюсь получить значение раскрывающегося списка .NET в JQuery, но я могу получить только ID выбранного элемента, а не выбранное значение. Можно ли сделать это? Это мой текущий код, который получает идентификатор выбранного элемента:
alert($('#<%=ddlReportPeriods.ClientID %>').val());
попробовать
alert($('#<%=ddlReportPeriods.ClientID %> option:selected').text());
если он совпадает с обычным раскрывающимся списком html, вы можете попробовать
$('#<%=ddlReportPeriods.ClientID %> option:selected').val()
Вы можете установить атрибут элемента управления ASP.NET, который не будет изменять идентификатор во время выполнения, то есть
ClientIDMode = "Static"
Затем попробуйте
alert($("#ddlReportPeriods option:selected").val());
Попробуйте следующее:
alert($('#<%=ddlReportPeriods.ClientID %> OPTION:selected').val());
Если вы хотите, это текстовое содержимое текущего тэга <option>
под вашим элементом <select>
, вы можете сделать это:
var $sel = $('#<%=ddlReportPeriods.ClientID %>');
alert($($sel.attr('options')[$sel.attr('selectedIndex')).text());
edit — другие ответы с предложениями использовать ": selected" квалификатор лучше, чем это...
<asp:DropDownList ID="ddMainMenuList" runat="server" class="form-control">
</asp:DropDownList>
$("[id*=ddMainMenuList]").val("SomeValue");
Так вы можете назначить какое-либо значение в раскрывающемся списке или текстовом поле или любом другом элементе управления asp. Просто вы должны упомянуть "id".