在下拉列表更改时调用 Javascript 函数

本文关键字:调用 Javascript 函数 下拉列表 | 更新日期: 2023-09-27 17:55:55

我正在使用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();

这一定是一件简单的事情,但我已经堆叠了这个..

在下拉列表更改时调用 Javascript 函数

你需要修改你的选择器

$("#<%=ddlList.ClientID%>").change(function() {
    // do stuff here...
});

你拥有的 jQuery 选择器以服务器控件的 id 为目标,但是当服务器发回响应时,id 会变成一些垃圾,比如ct100_ddlList。还可以将客户端 ID ode 设置为服务器控件上的状态。

如果你想

在javascript中使用完全相同的名称,你可以使用ClientIDMode="Static"来表示ddlList。