標題:
jqery 讀 python 的dictionary
[打印本頁]
作者:
calvinping
時間:
2010-7-19 16:33
標題:
jqery 讀 python 的dictionary
請問各位
在後端將查詢結果存成python的 dictionary 並轉成 json格式
def ajax(request):
a = mymodels.objects.all()[0]
result = {}
result['name'] = a.name
result['age'] = a.age
result = simplejson.dumps(result)
return HttpResponse(result)
而在前端使用$.getJSON 讀取並呈現
$.getJSON("/rpc",function(json){
for(i=0;i<json.length;i++){
$(".containtest").append("<li>"+json[i].name+"<ul><li>"
+json[i].age+</li></ul></li>);
}
});
麻煩請告知問題所在?
作者:
wmh
時間:
2010-7-19 22:28
目前看到的是 append() 裡面的標籤排列組合怪怪的,是可以運作,但不太符合語意。
此外有看到什麼錯誤訊息嗎?
作者:
calvinping
時間:
2010-7-19 22:51
並沒有出現任何的錯誤~"~很正常
$.get("/rpc",function(json){
for(i=0;i<json.length;i++){
$(".containtest").append("<li>"+json+"</li>"
);
}
});
如果改成上面的傳遞會正常的出現以下字串
{"name":XXX,"age":XXX}
作者:
calvinping
時間:
2010-7-19 23:00
這又讓我回想起
http://jsgears.com/thread-303-1-1.html
你所說的json的格式
var j = [{name:"aa", text:"hello"},{name:"bb", text:"world"}];
跟我用$.get 呈現出來的字串好像不依樣~
不知道這樣看是否正確
作者:
wmh
時間:
2010-7-19 23:06
喔,因為你帶給前端的值只有一組,並非 array
直接看你的 python 輸出結果即可得知。
作者:
calvinping
時間:
2010-7-20 11:00
所以我想他輸出因該是個字串...
可否告知因該如何修改...
作者:
wmh
時間:
2010-7-20 13:31
不是字串的關係,是你提供的值只有一組,非 array
{"name":XXX,"age":XXX}
array 的話會是這樣的字串:
[ {"name":XXX,"age":XXX}, {"name":XXX,"age":XXX} ]
作者:
calvinping
時間:
2010-7-20 14:46
非常感謝~!!
我在試看看
歡迎光臨 jsGears.com 技術論壇 - AJAX, JavaScript, jQuery, 網站開發, 前端效能優化 (http://www.jsgears.com/)