下拉列表的触发更改事件

Pra*_*sad 81 asp.net-mvc jquery triggers

我想使用jquery在$(document).ready中触发下拉列表的更改事件.

我在用户详细信息页面中有国家和州的级联下拉列表.如何使用C#设置MVC中的国家和州的值(基于用户ID从DB中获取).

Chr*_*blé 175

我不知道那么多JQuery,但我听说它允许使用这种语法激发本机事件.

$(document).ready(function(){

    $('#countrylist').change(function(e){
       // Your event handler
    });

    // And now fire change event when the DOM is ready
    $('#countrylist').trigger('change');
});
Run Code Online (Sandbox Code Playgroud)

您必须在调用trigger()或change()之前声明更改事件处理程序,否则不会触发它.感谢提及@LenielMacaferi.

更多信息在这里.

  • `$('#countrylist').change();`现在也有效. (28认同)
  • 你必须在调用`trigger()`之前声明更改事件处理程序,甚至在本答案中正确显示`change()`,也就是说,如果事件处理程序代码出现在调用之后,则没有任何反应!:) (12认同)
  • @LenielMacaferi谢谢你救了我一两个小时. (3认同)

mln*_*nyc 12

试试这个:

$(document).ready(function(event) {
    $('#countrylist').change(function(e){
         // put code here
     }).change();
});
Run Code Online (Sandbox Code Playgroud)

定义更改事件,并立即触发它.这可确保在调用事件处理程序之前定义它.

可能会迟到回答原始海报,但其他人可能会从速记符号中受益,这跟随jQuery的链接等

jquery链接


d.p*_*pov 8

尝试这个:

$('#id').change();

为我工作。

与设置值一起在一行上: $('#id').val(16).change();

  • $('#id').val(16).change(); 为我做的。 (4认同)