【发布时间】:2014-01-19 16:50:15
【问题描述】:
我有一个选择的下拉菜单。我更改了选项内容并调用触发器选择:更新但选择不重建下拉菜单。这是我的更新
<select name="shortcode" style="width: 150px; display: none;" class="chosen_select chzn-done" id="select_shortcode"> <option value=""></option> <option value="7183">7183</option> <option value="7983">7983</option> </select>
这是选择的下拉菜单(应该重建并删除最后两个<li>)
<ul class="chzn-results">
<li id="select_shortcode_chzn_o_1" class="active-result" style="">7183</li>
<li id="select_shortcode_chzn_o_2" class="active-result" style="">7983</li>
<li id="select_shortcode_chzn_o_3" class="active-result" style="">8208</li>
<li id="select_shortcode_chzn_o_4" class="active-result" style="">8308</li>
</ul>
这是我的 jQuery 代码:
$('#select_shortcode_mask').change(function(){
var shortcode_mask = $('#select_shortcode_mask').val();
$('#select_shortcode').empty();
var shortcode = {"7X83":["7183","7983"],"8x08":["8208","8308"]};
$('#select_shortcode').append("<option value=''></option>");
if(jQuery.isArray(shortcode[shortcode_mask])){
$.each( shortcode[shortcode_mask], function( subkey, subvalue ) {
$('#select_shortcode').append("<option value='"+subvalue+"'>"+subvalue+"</option>");
})
} else {
var full_shortcode = ["7183","7983","8208","8308"];
if(jQuery.isArray(full_shortcode)){
$.each(full_shortcode, function( subkey, subvalue ) {
$('#select_shortcode').append("<option value='"+subvalue+"'>"+subvalue+"</option>");
})
}
}
$("#select_shortcode").trigger("chosen:updated");
});
已解决: 我使用的是旧版本,所以它应该:
$("#select_shortcode").trigger("liszt:updated");
所以转储^^
【问题讨论】:
-
好的,你的选择没有更新,但是原来的选择更新了吗?
-
是的,我的原始选择已更新。感觉触发器不运行
-
您是否在更改事件期间检查控制台中的错误?
-
是的,我的控制台没有错误,完全清楚。每次事件发生时我的原始选择都会更改,但感觉触发器不运行。是钻机吗
-
我的错。是旧版本。所以转储@@
标签: jquery jquery-chosen