2013-02-19 56 views
0

喜的朋友我试图我的AJAX输出追加到我的下拉列表....追加Ajax的jQuery的数据到下拉列表中的CakePHP

我AJAX功能: -

$.ajax({ 
    url: "getcolumn", 
    data: {value: value}, 
    type: "POST", 
    success: function(output) { 
     var column = output;//here i am assigning the output to another variable 
     var mySelect = $('#table_name'); 
     $.each(column, function(val, text) { 
      mySelect.append($('<option></option>').val(val).html(text)); 
     }); 

我的形式下拉: -

echo $this->Form->input('Column', array(
    'label' => 'Select the column name below', 
    'name' => 'tablename', 
    'id' => 'table_name', 
    'options' => array('null') 
)); 

我想从AJAX输出追加到上述下拉框.... 我试图在我的AJAX成功处理功能增加,但没有工作。谁能帮我.... 和输出是JSON形式.....

+0

你可以在这里发布'json'输出吗? – Jai 2013-02-19 11:08:14

+0

['id','venue','address',....] – 2013-02-19 11:16:57

+0

我需要查看json结构,并且请具体说明要在选项文本中显示json的哪个部分。 – Jai 2013-02-19 11:21:02

回答

0

试试这个:

$.ajax({ 
url: "getcolumn", 
data: {value: value}, 
type: "POST", 
contentType: "application/json", //<----add this 
dataType: "json"     //<----and this 
success: function(output) { 
    var column = output;//here i am assigning the output to another variable 
    var mySelect = $('#table_name'); 
    $.each(column, function(val, text) { 
     mySelect.append($('<option></option>').val(val).html(text.id)); 
    }); 
} 
}); 
+0

选项不能正常工作.... – 2013-02-19 11:30:18

+0

你有一个有效的json结构。请尝试在这里:http://jsonlint.com/ – Jai 2013-02-19 11:31:48

+0

它是一个有效的JSON – 2013-02-19 11:35:39

0

我sugest你getcolumn脚本 创建正确的JSON您的jQuery每个工作json的应该是这样的:

[{id: 86,label: "venue and address"}, {id: 87,label: "venue and address"}] 

,然后修改了一下你的循环:

mySelect.append($('<option></option>').val(text.id).text(text.label));