所以我正在使用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是我搜索的术语。
此代码返回错误:
“未捕获的TypeError:无法读取未定义的属性'7'”。
我该怎么办?

最佳答案

用:

var image_loc = data[nome][7];

10-06 08:11