Javascript 在下拉列表中键入字符时,它从选项中选择任意随机匹配项并触发更改事件
下面是我在backbonejs+coffeescript中的代码 情景: 我打开“国家”下拉列表,键入“I”以选择以“I”开头的国家 键入将触发关闭下拉列表的更改事件 预期: 下拉列表不应关闭,它应突出显示以“i”开头的国家/地区 我正在尝试获取仅在选择选项时触发的事件 注意:您已经使用了jquery轻松下拉列表 Backbonejs代码-Javascript 在下拉列表中键入字符时,它从选项中选择任意随机匹配项并触发更改事件,javascript,jquery,backbone.js,coffeescript,Javascript,Jquery,Backbone.js,Coffeescript,下面是我在backbonejs+coffeescript中的代码 情景: 我打开“国家”下拉列表,键入“I”以选择以“I”开头的国家 键入将触发关闭下拉列表的更改事件 预期: 下拉列表不应关闭,它应突出显示以“i”开头的国家/地区 我正在尝试获取仅在选择选项时触发的事件 注意:您已经使用了jquery轻松下拉列表 Backbonejs代码- class Brown.Views.Home.OperatorSignUp extends Backbone.View events: 'cha
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>
国家
国家
根据我在您提供的链接中找到的插件文档,您可以注册onSelect的回调,同时在任何select元素上应用easyDropdown,如下所示
$(function(){
var $selects = $('id-for-select');
$selects.easyDropDown({
onSelect: function(selected){
// do something
}
});
});
所以我想你可以用这个代替变更事件。在我当前的项目中,我已经做了很多次完全相同的事情,没有任何问题。我唯一可以假设的是,jqueryeasydropdown插件在您不希望的时候触发事件。您是否在未启用插件的情况下尝试过此操作?