我做了一个代码,用于从远程网址获取数据,但没有任何工作。
php页面文件:
<script>
$(document).ready(function () {
console.log('comecei');
$('#city').typeahead({
source: function (query, result) {
$.ajax({
url: "http://localhost:81/xxx/api/api.auto.complete.city.php",
data: 'query=' + query,
dataType: "json",
type: "POST",
success: function (data) {
console.log(data);
result($.map(data, function (item) {
return item;
}));
}
});
}
});
});
</script>
<input id="city" type="text" data-provide="typeahead" />
要加载ajax数据的文件:
<?php
error_reporting(E_ALL);
header("Content-Type: text/html; charset=ISO-8859-1");
require_once ("../system/Database.php");
require_once ("../system/Site.php");
require_once ("../system/Functions.php");
$query = isset($_POST['query']) ? strval($_POST['query']) : '';
//not using query for while...
$db = new HiudeDatabase();
$items = $db->select("call sp_list_city()");
if (is_array($items))
{
foreach ($items as $item)
{
if (isset($item['id']) && isset($item['name']))
{
$result[] = json_encode($item);
}
}
echo json_encode($result);
}
$db->close();
?>
这里有一些ajax文件输出的例子:
["{\"id\":\"4\",\"name\":\"Alegre\"}","{\"id\":\"5\",\"name\":\"Alfredo Chaves\"}"
但是当我在页面上的文本框中放置一些文本时,没有任何作用,问题出在哪里?
其他方面,如何调试此脚本的生命周期?