【发布时间】:2018-12-09 01:12:39
【问题描述】:
当用户开始在文本字段中输入时,我正在使用 ajax 搜索数据库。结果显示在无序列表中。我希望他们能够单击列表项,并且该项目必须出现在文本框中。我可以进行搜索并显示列表,但是我在单击 li 部分时遇到了困难。
HTML:
<div class="form-group">
<input type="text" name="name" autocomplete="off" id="name">
<div class="result"></div>
</div>
<div style="display:none" class="loader">
<img src="../build/css/ajax-loader.gif" />
</div>
JS:
$(document).ready(function() {
$("input").keyup(function() {
$(".loader").show();
var input = $(this).val();
if (input.length > 3) {
$.ajax({
type: 'POST',
url: 'insert-ajax.php',
data: {
name: input
},
success: function(data) {
if (!data.error) {
$(".result").html(data);
$(".loader").hide();
}
}
});
}
if (input.length < 1) {
$(".loader").hide();
$(".result").html("");
}
});
$(".result li").click(function() {
alert($(this).data());
});
});
【问题讨论】:
-
@JayBlanchard 他已经这样做了
-
我不认为
data()接受 0 个参数。 api.jquery.com/jquery.data
标签: javascript jquery ajax