2015-10-06 36 views
0

我有一個使用jquery的ajax,而ajax響應是一個json。我的AJAX如下:json如何使結果改變爲預期的值

$.post("updatechatusers.php", {courseid:cid}, function (data) { 
     console.log(data); 

      var json = $.parseJSON(data); 
      $(json).each(function(i,val){ 
      $.each(val,function(k,v){ 
      console.log(k+" : "+ v);  
      }); 
      }); 


    },"json"); 

但我得到我的控制檯如下:

[Object, Object, Object, Object] 

id:1 name:test1 ..... 

json如下:

var j ='[{"id":"1","name":"test1"},{"id":"2","name":"test2"},{"id":"3","name":"test3"},{"id":"4","name":"test4"},{"id":"5","name":"test5"}]'; 

我輸出ID:1名: test1 .....

我不想要id:name:,我需要的是1 test1....... Witho ut使用json的標籤。

+0

你的代碼是工作的罰款[這裏](http://jsfiddle.net/zsLk691z /)。嘗試重現問題,以便我們可以修復 –

+0

@JSantosh我得到作爲id:1名稱:test1。我不想要id:name:。我螞蟻1 test1 – Santhucool

+0

你可以發佈你的期望。在OP中,你說你有錯誤。 –

回答

1

假設你需要以逗號分隔的數據是這樣1-test1,2-test2,3-test3,4-test4,5-test5,

代碼是

var j = '[{"id":"1","name":"test1"},{"id":"2","name":"test2"},{"id":"3","name":"test3"},{"id":"4","name":"test4"},{"id":"5","name":"test5"}]'; 
 
console.log(JSON.parse(j)) 
 
var json = $.parseJSON(j); 
 
var temp = '' 
 
$(json).each(function(i, val) { 
 
    temp += val.id + '-' + val.name + ','; 
 
}); 
 
console.log(temp)

+0

非常感謝你的朋友! – Santhucool

+0

很高興幫助:) –

2

應該$.each這樣的:

...... 
     var json = $.parseJSON(data); 
     $.each(json, function(i,val){ // See the change here 
      $.each(val,function(k,v){ 
      console.log(k+" : "+ v); 
      }); 
     }); 
....... 

從文檔。 http://api.jquery.com/jquery.each/

編輯:看起來像這樣是你想要的。

var json = $.parseJSON(j); 
$.each(json,function (i, val) { 
    console.log(val.id+' '+val.name) 
}); 
+1

確定好友,它現在正在工作,問題是我把json放在ajax響應中。當我刪除它,現在它繼續工作 – Santhucool

+0

更新請看看! – Santhucool

+0

@Santhucool在這裏檢查http://jsfiddle.net/xv1ouvqr/ –

1

您可以像這樣使用ajax POST。希望它對你有所幫助。

var data = "{'courseid':"+cid+"}"; 
    $.ajax({ 
     url: "updatechatusers.php", 
     contentType: "application/json", 
     dataType: "json", 
     data: data, 
     type: "POST", 
     beforeSend: function (jqXHR, settings) { }, 
     success: function (result, textStatus, jqXHR) { 
      console.log("JSOn Result======"+JSON.stringify(result)); 
     }, 
     error: function (jqXHR, textStatus, errorThrown) { 
      console.log("error " + jqXHR.responseText + " " + textStatus + " " + errorThrown); 
     } 
    }); 
+0

已更新。看看 – Santhucool