2014-02-26 69 views
-1

我有一個從$ .ajax請求返回的對象。這是一個例子:訪問數組中的項目

[{"id":"14","branchName":"Catcliffe","address1":"26 Main Street","address2":"","address3":null,"city":"Catcliffe","county":"South Yorkshire","postcode":"S60 5SR","country":"UK"}] 

我有關於如何訪問項目陣列中的,例如我怎麼會設置一個變量的「BRANCHNAME」腦凍...

這是我用來獲取數據的代碼:

$("#branchID").change(function(){ 
    var id = $(this).val(); 
    $.ajax({ 
      url: "/admin/getBranchInfo.php?branchID=" + id, 
      success: function(branch){ 
         $("div#results").html(branch); 
        } 
    }); 
}); 

回答

0

我只是假設你將該對象保存在一個名爲xObj的變量中。

嘗試,

console.log(xObj[0].branchName) 

但因爲你沒有提到的類型,你應該訪問值之前解析它,

var xObj = JSON.parse(branch); 
console.log(xObj[0].branchName) 
+0

嗨,對不起,我今天早上很忙,忘了說它是一個JSON對象......這個工作很完美。 –

1

你需要用它來獲得的第一個元素返回數組中索引,[0],那麼你可以從中獲取你想要的財產,.branchName

$("div#results").html(branch[0].branchName); 

Example fiddle

+0

嗨,我試過這個,但是我在控制檯中得到'undefined',這首先讓我感到困惑! –

0

你必須使用indexer,訪問數組的元素。作爲數組包含對象,你去使用點.操作符來訪問像branchName

Live Demo

$("div#results").html(branch[0].branchName); 

對象屬性您的代碼將是

$("#branchID").change(function() { 
    var id = $(this).val(); 
    $.ajax({ 
     url: "/admin/getBranchInfo.php?branchID=" + id, 
     success: function (branch) { 
      $("div#results").html(branch[0].branchName); 
     } 
    }); 
}); 
0

你會從一開始的BRANCHNAME財產陣列中的第一個(也是唯一的)物品:

$("div#results").html(branch[0].branchName); 
0

使用對象和使用它的屬性,我們可以訪問它的分支[0] .branchname

$("#branchID").change(function() 
{ 
var id = $(this).val(); 
$.ajax(
{ 
url: "/admin/getBranchInfo.php?branchID=" + id, 
success: function(branch) 
{ 
var branchname= branch[0].branchname; 
$("div#results").html(branch); 
} 
}); 
}); 
0

要處理多個對象可以循環使用的,如一個循環的結果如下:

for(var i in branch) 
{ 
    var id = branch[i].id; 
    var branchName = branch[i].branchName; 
    //.... 
    //Iterate other objects as well 
}