繁体   English   中英

如何在不触发更改事件的情况下设置选择元素的选定选项?

[英]how to set the selected option of a select element without triggering a change event?

我目前在选择上使用它:

var sortNo = $('select[name=anzahl_eintraegeSEL]');

sortNo
    // set selected based on hidden input default value
    .find('option[value="'+ $('input[name=anzahl_eintraege]').val() +']')
    .attr('selected', 'selected').attr('set',true)
    // set up change listener
    .on('change', function(){
        // do sth
        });

我想在不触发初始更改事件的情况下将默认选项设置为选中。

我怎样才能让它工作? 以上似乎立即触发了更改事件。

感谢帮助!

你可以试试:

   sortNo
  .on('change', function(){
    // do sth
  })
  .val($('input[name=anzahl_eintraege]').val()); // set the default value get from hidden field

演示

一次:在这一行:

.find('option[value="'+ $('input[name=anzahl_eintraege]').val() +']')

你错过了结束的'"'。应该是:

.find('option[value="'+ $('input[name=anzahl_eintraege]').val() +'"]')

接下来,您的 .on() 将在 jQuery 将您的标签放在顶部时执行...我猜您想要更改 .on() ,而不是 .

而且你不需要自己找到选项标签,jQuery 可以为你做到这一点,使用 sortNo.val()。

我相信这就是你想要的?:http: //jsfiddle.net/KadrG/

暂无
暂无

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

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