我正在使用typeahead.js 0.9.3,typehead是否可能仅允许列表中的项目,而不能由用户输入手动文本。它不允许用户执行此操作,或者在发生任何事件后检查用户是否在列表中显示该值。
$(document).ready(function(){
$('input.typeahead').typeahead({
name: 'typeahead',
remote:'sale/files/search_part.php?key=%QUERY',
limit : 10
});
});
我不擅长javascript和JQuery,所以不知道如何将数组值设置为list,因此下面的代码可以检查它是否存在于list中。请帮助
var myData = [...]; // how to assign output list to this array?
$("#partno").typeahead({source : myData}).blur(validateSelection);
function validateSelection() {
if(source.indexOf($(this).val()) === -1) {
alert('Error : element not in list!');
}
}
输入字段
<input type="text" name="typeahead" class="typeahead tt-query" autocomplete="off" spellcheck="false" id="partno" >
答案 0 :(得分:0)
将输出列表分配给myData
$(document).ready(function() {
var myData = [];
$.ajax({
url : url_example.php,
data:{
condition : 'text'
},
dataType:'json',
method:'POST',
success:function(result){
myData = result.data
},error: function (XMLHttpRequest, textStatus, errorThrown) {
console.log('error!');
}
})
});
您可以在此处阅读更多内容 http://api.jquery.com/jquery.ajax/