2014-02-22 55 views
1

我有一個DB的PHP文件至極搜索,然後建立與陣列結果和它結束和顯示結果是這樣的:是否有可能將json輸出作爲jquery中的數組?

{"1":"1","2":"2","15":"15","25":"25"} 

這意味着位置0是沒有結果,位置1具有值1,等等。 (據I /知道這個結果是一個有效的JSON輸出)

jQuery的身邊,我有這個

 $.ajax({ 
     type: 'POST', 
     url: 'diahoracierre.php', 
     dataType: 'json', 
     cache: false, 
     success: function(result) { 
      alert(result); 
     }, 
    }); 

我需要的是「解析」的結果到一個數組中,並能夠發揮其使用陣列的索引上結果的內容,像

alert(result[X]); 

[1]它顯示1,任何其他嘗試示出未定義和至少有4個結果。

+0

那麼比的事實,你的JSON名爲'result'而不是其他'myArray',我[不知道爲什麼這ISN」 (http://jsfiddle.net/tX8EQ/) – Ohgodwhy

+0

editted,有其他「問題」:/ – Mark

+0

[所以這樣?](http://jsfiddle.net/wVQ4U/) – Ohgodwhy

回答

1

你有兩個選擇要麼你遍歷結果並創建數組由你自己(一個單調乏味的任務),或者你訪問像下面這樣的元素,請注意關於索引的引用是必需的,儘管我們在說索引,但實際上我們正在尋找關鍵的名字。

result["index"] 

例如

result["5"] 

而且我想你的jsFiddle和它的工作:

var json = '{"0":"-1","1":"1","2":"2","15":"15","3":"-1","25":"25","4":"-1","5":"-1","6":"-1","7":"-1","8":"-","9":"-1","10":"-1","11":"-1","12":"-1","13":"-1","14":"-1","16":"-1","17":"-1","18":"-1","19":"-1","20":"-1","21":"-1","22":"-1","23":"-1","24":"-1","26":"-1"}'; 
json = JSON.parse(json); 
alert(json["25"]); 
1

既然您已使用dataType: 'json'。然後它不再需要你解析json結果。

另外請注意,您的參數在成功命名result function.So你可以使用:的

alert(result[1]); 

代替:

alert(myArray[1]); 
相關問題