我正在尝试在 jquery 中实现自动完成,我已经检查了 Jquery ui autocomplete 但无法弄清楚。
我需要从 url 作为 json 或文本获取数据,但每次在自动完成中更改文本时我都应该这样做。我不应该提取所有数据并保留在客户端..
请让我知道我们是否有任何直接的实现作为插件或其他东西..我是 jquery 的新手
我正在尝试在 jquery 中实现自动完成,我已经检查了 Jquery ui autocomplete 但无法弄清楚。
我需要从 url 作为 json 或文本获取数据,但每次在自动完成中更改文本时我都应该这样做。我不应该提取所有数据并保留在客户端..
请让我知道我们是否有任何直接的实现作为插件或其他东西..我是 jquery 的新手
你应该可以通过给一个回调来使用 jquery ui 自动完成来做到这一点source
$('#your_input').autocomplete({
source: function(request, response) {
$.ajax({
...
success: function( data ) {
response( $.map( data.field, function( item ) {
return {
...
请参阅JSON 示例
匹配结果来自每次按键时的服务器
<script src="@Url.Content("~/Scripts/jquery-1.7.2.js")" type="text/javascript"></script>
<script type="text/javascript">
$("#input_id").autocomplete({
source: function (request, response) {
$.ajax({
url: 'URL',
dataType: "json",
data: {
filter: request.term // word being typed, can add additional params as needed
},
success: function (data) {
response($.map(eval(data), function (item) {
return {
label: item.em_name,
custom_val: item.custom_val,
custom_val2: item.custom_val2
}
}));
}
})
},
maxLength: 2, //length before search text gets submitted
select: function (event, ui) {
$("#custom_val_textbox").attr('value', ui.item.custom_val);
$("#custom_val_textbox2").attr('value', ui.item.custom_val2);
}
});
</script>