我有三个选择框
$("select#selectbox1").val(data.Ref_box1_ID.toString()).trigger('change');
$("select#selectbox2").val(data.Ref_box2_ID.toString()).trigger('change');
$("select#selectbox3").val(data.Ref_box3_ID.toString()).trigger('change');
我有一个问题:内部更改事件中有一些代码可以在下一个选择框中加载选项,但看起来它只能正常工作,正确选择该选项,然后在下一个选择框中触发更改事件加载选项;但是第二个选择只显示第一个选项,表示“选择一个选项...”,而在第三个选项中它根本不加载任何东西,也没有选择任何选项..
我在这段代码中可能错过了什么?...我试图将.blur()刷新但没有效果,也没有在.trigger()之前添加事件attrib('selected','selected')。 ..
任何方向都会受到赞赏。
答案 0 :(得分:0)
检查
<select id="selectbox1" />
<option value="11"> 11</option>
<option value="12"> 12</option>
<option value="13"> 13</option>
</select>
<select id="selectbox2" />
<option value="21"> 21</option>
<option value="22"> 22</option>
<option value="23"> 23</option>
</select>
<select id="selectbox3" />
<option value="31"> 31</option>
<option value="32"> 32</option>
<option value="33"> 33</option>
</select>
$(function() {
$('#selectbox1 , #selectbox2, #selectbox3').on('change', function() {
var val = $(this).find('option:selected').val();
alert('Value of ' + $(this).attr('id') + ' is : ' + val);
});
$("#selectbox1").val('12').trigger('change');
$("#selectbox2").val('23').trigger('change');
$("#selectbox3").val('32').trigger('change');
});
在定义事件之后或之前是否触发了事件..如果以后完成,则事件尚未可用于触发...
检查FIDDLE