2016-12-05 74 views
1

这是第一次生病使用JSON。我使用json_encode(myarrayhere)返回数组值,如下所示。 在下拉菜单中选择值的变化有相应的值。填充JSON数组下拉式保留字列​​名冲突

我核实,我用alert(dataArray)获取数组数据,并将其返回这样

[{"title":"First"}, 
{"title":"Second"}, 
{"title":"Third"} ] 

我作为列名的字冠军了,我用我的数据库中的表。 但现在的问题是如何在下拉菜单中正确填充它们。我试图做value.title但看起来这一头衔是在PHP

$.ajax({ 
    type: 'POST', 
    data: {ctgy: selected},  
    url: 'awts.php' ,   
    datatype: 'json', 
    success: function (dataArray) { 
    alert(dataArray); 

    var items = ''; 
     $.each(result,function(name,value) { 
     items += "<option value='"+value.title+"'>"+value.title)+"</option>"; 
     }); 
     $("#dropdownselectid").html(items); 
    } 
}); 

感谢事先保留字/方法。

+0

'result'。在'$ .each()'用'dataArray'代替'result'' – guest271314

回答

1

首先,如果你检查控制台,你会发现你有一个语法错误。当您将value.title附加到HTML字符串时,您有额外的)

其次,当您的数据位于名为dataArray的变量中时,您的$.each()调用正试图循环访问result

试试这个:没有定义

$.ajax({ 
    type: 'POST', 
    data: { ctgy: selected },  
    url: 'awts.php',   
    datatype: 'json', 
    success: function(dataArray) { 
     var items = ''; 
     $.each(dataArray, function(name, value) { 
      items += '<option value="' + value.title + '">' + value.title + '</option>'; 
     }); 
     $("#dropdownselectid").html(items); 
    } 
}); 

Working example

+0

问题是'result'没有被定义。 – guest271314

+0

@ guest271314呵呵!谢谢。我把它写在问题的描述中,但忘记了用代码XD改变它 –