首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >级联下拉菜单中的触发器更改事件

问级联下拉菜单中的触发器更改事件
EN

Stack Overflow用户
提问于 2010-01-16 04:52:46
回答 2查看 3K关注 0票数 1

我使用的是http://stephenwalther.com/blog/archive/2008/09/07/asp-net-mvc-tip-41-creating-cascading-dropdown-lists-with-ajax.aspx中的级联下拉菜单。

我需要为dropdown设置一个值,并调用change事件,这样级联下拉列表才不会第一次看起来是空的。

但change事件不会调用尝试:

代码语言:javascript
复制
            $('#Country').trigger('change');
                       or
            $('#Country').change();

如何调用此dropdown的change事件来触发级联dropdown。

EN

回答 2

Stack Overflow用户

发布于 2010-01-16 05:15:13

你的dropdownlist控件是服务器端(asp:dropdownlist标签)还是客户端(select标签)?

如果它们是服务器端的,则需要它为控件注入客户端ID。这可能是缺少事件触发的原因。

在ASP.NET中,服务器端控件具有不同的、生成的客户端ID (因此ID为"Country“的DropDownList将具有类似ct01_ct050_Country的客户端ID。

在这些情况下,您可以在运行时将客户端ID注入到您的标记中,使用:

代码语言:javascript
复制
$('#<% Country.ClientID %>').change(function() {
    //code here
});

在运行时,呈现的代码/标记最终将如下所示:

代码语言:javascript
复制
$('#ct01_ct050_Country').change(function() {
    //code here
});

避免客户端/服务器is的另一种选择是对控件应用唯一的CSS类名,并按其进行选择:

标记:

代码语言:javascript
复制
<asp:DropDownList ID="Country" CssClass="countryDD" runat="server" />

和jQuery:

代码语言:javascript
复制
$('select.countryDD').change(function () {
    //code here
});

我不确定它是否与ASP.NET相关,因为我不使用该框架,但我假设它在概念或标记上与客户端代码非常接近。

希望这能有所帮助..。

票数 0
EN

Stack Overflow用户

发布于 2012-07-11 22:23:57

对于我的级联下拉菜单,我使用jquery on或bind

代码语言:javascript
复制
$('#Country').on('change', function () {
  //Do stuff here

});

$('#Country').bind('change', function () {
  //Do stuff here

});
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2074706

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档