繁体   English   中英

如何使用asp.net下拉列表调用JavaScript函数

[英]How to call a javascript function using asp.net dropdown list

dropdown列表更改后,我需要调用javascript函数。

我如何在asp.net实现呢?

单击下拉列表时,请使用onchange事件执行功能。

<select id="mylist" onchange = "go()">
<option value="value1">value1</option>
<option value="value2">value2</option>
</select>

<script>
  function go()
  {
    var x = document.getElementById("mylist").value;
    console.log(x);
  }
</script>
<asp:DropDownList runat="server" ID="DDList" onclick="alert(1)"></asp:DropDownList>

如果要在单击元素时让函数执行,则可以使用上面的代码定义应“ onclick”执行的函数。

但是最好使用addEventListener东西,只是搜索跨浏览器的函数(例如, 这里的 addListener函数):

document.getElementById("<%=DDList.ClientID %>").addEventListener("click", fucntionToExecuteName, false)

请记住,与这种情况相比,必须使用DDList.ClientID并将其用作元素的ID,因为它与您在aspx代码中设置的ID不同

但是,如果需要在更改实际值时执行某些功能,则应使用onchange事件。

使用类似这样的东西(使用jQuery):

$(document).ready(function() {
    $("#dropdownId").change(function(e)) {
             do something...
    });
});

使用Jquery

$(document).ready(function(){
    $("#DropDownID").change(function () {
           // Your requirment
     });
});

同样最好将其写在document.ready

使用jQuery

$(document).ready(function(){
    $('select[name$=DrpGoingTo]').change(function () {
       //Code here
    });
});

将此脚本添加到标记中,并确保还包括对jquery的脚本引用:

$(document).ready(function()
{
     $("#yourDropdownId").change(function(){
        //Todo: write your javascript code here.
 });
});

确保以“ yourDropdownId”作为ID的控件具有以下属性:“ ClientIDMode”设置为静态,否则“全知” ASP.NET引擎将自动为生成的html生成元素名称,并将其父元素名称附加到默认情况下进行控制。

您可以使用onchange事件并从自身调用它:

<asp:DropDownList ID="DropdownList" runat="server" onchange="javascript:MyFunction();" >
</asp:DropDownList>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM