下面是我在 backbonejs + coffeescript 中的代码。
场景: 我打开国家/地区下拉菜单,我输入“i”以选择以“i”开头的国家/地区 输入触发更改事件,下拉菜单从中关闭
预期: 下拉菜单不应关闭,它应突出显示以“i”开头的国家/地区
我正在尝试获取仅在选择选项时触发的事件
注意:使用了jquery easy drop down plugin link
Backbonejs 代码 -
class Brown.Views.Home.OperatorSignUp extends Backbone.View
events:
'change #country' : 'getState'
getState: (event)->
unless _.isEmpty($('#country').val())
$('#state').html @statesTemplate(states: '')
HTML 代码 -
<div class="form-group colCountry customSelectRow">
<select id='country' name='country' class="form-control search">
<option value="" class="countryLabel">Country</option>
<% _.each(countries, function(val, key, object){%>
<option value='<%=key%>'><%=val%></option>
<% }) %>
</select>
<label class="floatingLabel">Country</label>
</div>
最佳答案
根据我在您提供的链接中找到的插件文档,您可以在对任何选择元素应用 easyDropdown 时为 onSelect 注册回调,如下所示
$(function(){
var $selects = $('id-for-select');
$selects.easyDropDown({
onSelect: function(selected){
// do something
}
});
});
所以我猜你可以使用它来代替 change 事件。
关于javascript - 在下拉菜单中输入字符时,它会从选项中选择任何随机匹配项并触发更改事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38330740/