所以我使用 AJAX 从我的数据库中获取行,然后将它们转换为具有变量标识符的数组 这是 PHP 代码:
$query_val = $_GET["val"];
$result = mysql_query("SELECT * FROM eventos_main WHERE nome_evento LIKE '%$query_val%' OR local_evento LIKE '%$query_val%' OR descricao_evento LIKE '%$query_val%'");
for($i=0;$i<mysql_num_rows($result);$i++){
$array = array();
$array[$query_val] = mysql_fetch_row($result); //fetch result
echo json_encode($array);
}
这是javascript:
$('#s_query').keyup(function(){
var nome = document.getElementById('s_query').value;
$.ajax({
url: 'search.php',
data: '&val='+nome,
dataType: 'json',
success: function(data)
{
console.log(nome);
var image_loc = data.nome[7];
console.log(image_loc);
如果我将线路更改var image_loc = data.nome[7];
为var image_loc = data.nidst[7];
它可以完美运行。Nidst 是我搜索的术语。此代码返回错误:“未捕获的类型错误:无法读取未定义的属性 '7'”。我应该怎么办?