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>);
}
});
麻煩請告知問題所在? 目前看到的是 append() 裡面的標籤排列組合怪怪的,是可以運作,但不太符合語意。
此外有看到什麼錯誤訊息嗎? 並沒有出現任何的錯誤~"~很正常
$.get("/rpc",function(json){
for(i=0;i<json.length;i++){
$(".containtest").append("<li>"+json+"</li>"
);
}
});
如果改成上面的傳遞會正常的出現以下字串
{"name":XXX,"age":XXX} 這又讓我回想起
[url]http://jsgears.com/thread-303-1-1.html[/url]
你所說的json的格式
var j = [{name:"aa", text:"hello"},{name:"bb", text:"world"}];
跟我用$.get 呈現出來的字串好像不依樣~
不知道這樣看是否正確 喔,因為你帶給前端的值只有一組,並非 array
直接看你的 python 輸出結果即可得知。 所以我想他輸出因該是個字串...
可否告知因該如何修改... 不是字串的關係,是你提供的值只有一組,非 array[code]
{"name":XXX,"age":XXX}
[/code]array 的話會是這樣的字串:[code]
[
{"name":XXX,"age":XXX},
{"name":XXX,"age":XXX}
]
[/code] 非常感謝~!!
我在試看看
頁:
[1]