我有以下jQuery代码用于自动完成功能,
$( "#text" ).autocomplete({
source: function( request, response ) {
$.ajax({
type: 'GET',
url: 'server.php',
dataType: 'json',
data: {
input: request.term
},
success: function(data) {
response( $.map(data, function(item) {
return {
label: item.Symbol + " - " + item.Name + " ( " + item.Exchange + " )"
}
}));
}
});
},
minLength: 1,
select: function( event, ui ) {
var symbol = ui.item.label.split(' ');
setTimeout(function() {
$('#text').val(symbol[0]);
},0);
}
});
每当用户在文本框中输入密钥时,都会对PHP文件进行AJAX调用。这个PHP文件将从API检索数据并更新自动完成功能的建议列表吗?
我在PHP端有以下代码,
<?php
if(!empty($_GET['term'])) {
$term = $_GET['term'];
$url = "http://dev.markitondemand.com/MODApis/Api/v2/Lookup/json?input=".$term;
$j_response = file_get_contents($url);
$j_response = json_decode($j_response);
print json_encode($j_response);
}
?>
由于某种原因,自动填充功能对我不起作用-我在这里做错了什么?
在PHP中,您尝试使用$_GET['term']
,但在JavaScript中,变量被称为input
。将数据对象更改为term
不使用input
:
data: {
term: request.term
},
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句