我有一个文本框,我需要在其中显示用户可以选择并选择其中一个的建议。但是,只有在用户输入@字符时才会显示建议。 我不想隐藏@并且还希望在不使用该数组名称的@的情况下显示所有建议。它与Facebook评论部分非常相似,我们使用@作为我们的地址簿,当我们选择一个时,会自动删除特殊字符。
以下是我的Js文件。
$(document).on('paste keyup', 'input[class="task"]', function () {
var a = $(this).val();
if (a === '@') {
$(this).autocomplete({
source: arr,
minLength: 0,
select: function (event, ui) {
$(this).val((ui.item ? ui.item.id : ""));
}
}).on('focus keyup', function () {
$(this).keydown();
var isValid = false;
for (i in arr) {
if (arr[i].toLowerCase().match(this.value.toLowerCase())) {
isValid = true;
}
}
if (!isValid) {
this.value = previousValue
} else {
previousValue = this.value;
}
});
} else {
alert("Please enter @ for task list");
}
});
注意:arr是一个数组。