Javascript OnChange事件使用jquery过早触发
我正在使用jqueryselected()中的“multipleselect”。我有一个函数,每当此选择发生更改时(例如,选择了一个新选项或删除了一个选项),都必须调用该函数: firebug的html代码如下所示:Javascript OnChange事件使用jquery过早触发,javascript,jquery,onchange,jquery-chosen,Javascript,Jquery,Onchange,Jquery Chosen,我正在使用jqueryselected()中的“multipleselect”。我有一个函数,每当此选择发生更改时(例如,选择了一个新选项或删除了一个选项),都必须调用该函数: firebug的html代码如下所示: <div id="Q2_chosen" class="chosen-container chosen-container-multi chosen-with-drop chosen-container-active" style="width: 350px;" title="
<div id="Q2_chosen" class="chosen-container chosen-container-multi chosen-with-drop chosen-container-active" style="width: 350px;" title="">
<ul class="chosen-choices">
<li class="search-choice"></li>
<li class="search-field" onchange="getMultiselectVal();"></li>
</ul>
<div class="chosen-drop"></div>
</div>
这在添加项目时效果很好。我点击下拉列表,选择我想要添加的值(例如“英国”),该值被添加,现在我的函数被调用
但在删除项目时,这不起作用。如果我单击“x”删除该项,我的函数将立即被调用(这是错误的),该项将保留在列表中,直到我的函数完成
例如:
列表是空的。我现在加上“联合王国”。我的功能提醒“英国”。我现在添加了“德国”,我的函数提示“UnitedKingdomGermany”。我现在删除UnitedKingdom,我的函数会提醒“UnitedKingdomGermany”(因为该项只会在函数之后删除)
所以在我看来:
a) 调用onChange太早了。
b) 这是同步的,不是异步的。如果是异步的,我的函数就不会停止“删除过程”。我也面临同样的问题。。。。如果你知道了,请告诉我
<div id="Q2_chosen" class="chosen-container chosen-container-multi chosen-with-drop chosen-container-active" style="width: 350px;" title="">
<ul class="chosen-choices">
<li class="search-choice"></li>
<li class="search-field" onchange="getMultiselectVal();"></li>
</ul>
<div class="chosen-drop"></div>
</div>