jQuery: select 多个选择的默认值和触发器更改
jQuery: select default value and trigger change for multiple Selects
我是 jQuery 的新手,在网上找到了几种不同的方法,但对我来说都不起作用,所以我希望有人能帮助我。
我有个选择。他们每个人都有 一个选项,带有 class "defaultSel"
以指示在触发特定事件时应将其选为默认值。
我的方法如下,它确实更改了 Selects 值,但我无法让它真正触发更改(添加 .change()
和 .trigger('change')
对我来说都不起作用)。
另外,如果有办法完全避免 .each
,也请告诉我。
我的jQuery:
$(this).closest('div').nextAll('div.hiddenDiv').show().find('.defaultSel').each(function(){
$(this).prop('selected', true).change();
});
非常感谢您的帮助,
麦克
如果您的 option
与 defaultSel class 一致,那么这应该有效:
$(this).closest('div').nextAll('div.hiddenDiv').show().find('select:has(option.defaultSel)').each(function(){
$(this).find('option.defaultSel').prop('selected', true).end().change();
});
这里只改变两件事:
find('select:has(option.defaultSel)')
将获得您真正想要的 select
集,并且
$(this).find('option.defaultSel').prop('selected', true).end().change();
this
这里是 select
所以你需要找到默认选项,然后 end()
会 return 你到 select
你可以在上面触发 change()
。
我是 jQuery 的新手,在网上找到了几种不同的方法,但对我来说都不起作用,所以我希望有人能帮助我。
我有个选择。他们每个人都有 一个选项,带有 class "defaultSel"
以指示在触发特定事件时应将其选为默认值。
我的方法如下,它确实更改了 Selects 值,但我无法让它真正触发更改(添加 .change()
和 .trigger('change')
对我来说都不起作用)。
另外,如果有办法完全避免 .each
,也请告诉我。
我的jQuery:
$(this).closest('div').nextAll('div.hiddenDiv').show().find('.defaultSel').each(function(){
$(this).prop('selected', true).change();
});
非常感谢您的帮助, 麦克
如果您的 option
与 defaultSel class 一致,那么这应该有效:
$(this).closest('div').nextAll('div.hiddenDiv').show().find('select:has(option.defaultSel)').each(function(){
$(this).find('option.defaultSel').prop('selected', true).end().change();
});
这里只改变两件事:
find('select:has(option.defaultSel)')
将获得您真正想要的 select
集,并且
$(this).find('option.defaultSel').prop('selected', true).end().change();
this
这里是 select
所以你需要找到默认选项,然后 end()
会 return 你到 select
你可以在上面触发 change()
。