我知道这个问题已被问过几次,但我无法解决这个问题。我的问题很简单,我们如何使用jQuery获取asp下拉ID。
ASP
<asp:DropDownList ID="ddlNewPortfolioName" Width="150" runat="server" AutoPostBack="True"></asp:DropDownList>
JS
alert($("[id$='<%=ddlPortfolioName.ClientID %>']").val());
这个逻辑对我来说不起作用它显示未定义的值,dropdown
中是否有一些值可用,并且选择了第一个值。请帮帮我
答案 0 :(得分:4)
如果您只有一个项目,只需使用ID Selector (“#id”)您就不需要使用外卡的属性选择器。由于ClientID
为您提供完整且准确的元素ID。
alert($('#<%= ddlPortfolioName.ClientID %>').val());
如果您使用的是框架4或更高版本,则可以使用Control.ClientIDMode将服务器ID保持为ClientID
alert($('#ddlPortfolioName').val());
如果您在网格或转发器或listView中有下拉列表,则必须使用包含通配符和属性选择器。
$('[id*=ddlPortfolioName]').each(function(){
alert($(this).val());
});
答案 1 :(得分:0)
您需要选择所选的选项,然后获取其值。使用:
$('#<%=ddlPortfolioName.ClientID %> option:selected').val()
答案 2 :(得分:0)
你可以尝试像dis
Var data=$("input[id*=ddlPortfolioName]").val();
alert(data);
或
alert($('#<%= ddlPortfolioName.ClientID %>').val());
或者如果它在子页面中,你可以传递服务器端ID ...例如我的服务器端ID是
alert($("#ctl00_MainContent_ddlPortfolioName").val());