我正在使用Visual Studio 2013 WebForms,并且在更改下拉列表(Asp:DropDownList
)时尝试调用javascript函数。
但是我完全对这种行为感到困惑。有人可以告诉我有什么问题吗?
<asp:DropDownList ID="ddlList" CssClass="form-control" onchange="alert(1)" runat="server"></asp:DropDownList>
$(document).ready(function () {
function test() {
alert(1);
}
});
<asp:DropDownList ID="ddlList" CssClass="form-control" onchange="test()" runat="server"></asp:DropDownList>
$(document).ready(function () {
$('#ddlList').change(function(){
alert(1);
});
});
<asp:DropDownList ID="ddlList" CssClass="form-control" runat="server"></asp:DropDownList>
hide()
函数工作正常,所以我相信jquery本身可行。
$("#divTextbox").hide();
这一定是一件简单的事,但我已经堆叠了......
答案 0 :(得分:2)
您需要修改选择器
$("#<%=ddlList.ClientID%>").change(function() {
// do stuff here...
});
你的jQuery选择器的目标是服务器控件的id,但是当服务器发回响应时,id会变成像ct100_ddlList这样的垃圾。您还可以在服务器控件上将ClientIDMode设置为state。
答案 1 :(得分:0)
如果要在javascript中使用完全相同的名称,可以对ddlList使用ClientIDMode =“Static”。