我在这样的文本框上应用了自动完成插件。
var model = [];
for (var i = 0; i < data.length; ++i) {
model.push({ Label: data[i].ModelName, Value: data[i].CodeModel });
}
var modelData = model;
$('#tbmodele').autocomplete({
source: function (request, response) {
response($.map(modelData, function (value) {
if (value.Label.toLowerCase().startsWith(request.term.toLowerCase())) {
return {
label: value.Label,
vvalue: value.Value
};
}
}));
},
select: function (e, i) {
populateOtherFields(i.item.label);
return false;
},
open: function () {
$scope.isModelDropdownOpen = true;
},
minLength: 0,
scroll: true
});
现在我想按下该文本字段的向下箭头键打开自动完成列表。
有人可以建议我怎么做吗?
答案 0 :(得分:2)
将向下箭头键绑定到自动完成的search
方法:
$(document).on('keydown', '#tbmodele', function() {
$('#tbmodele').autocomplete('search', '');
});
答案 1 :(得分:0)
进一步回复此答案,因为接受的答案将始终在任何按键时弹出。要将此行为限制为仅使用键向下,并且输入字段为空时,请使用以下代码:
$('#tbmodele').on('keydown', function(e) {
if (e.which == 40 && $(this).val().length==0) {
$(this).autocomplete('search', '');
}
});