我已经精疲力尽了我的大脑,试图让一些简单的工作。我想用django将表单从后重新加载到ajax的行为。我只是无法让它工作。从django返回ajax响应
的形式是这样的:
<form id="form1" action="/myurl/" method="post" onsubmit="doexchange">
<input id="input1" type="hidden" name="serializedData" value=""/>
<button id="button1" type="submit">render<button/>
</form>
使用jQuery,我有这样的:
function doexchange(){
var dataBuffer = new Object();
dataBuffer = myCollecter(dataBuffer);
$("#input1").attr("value", JSON.stringify(dataBuffer));
$.get($("#form1").attr("action"),
{serializedData: $("#input1").attr("value")},
function(data){
alert('yes' + data);
});
return false;
}
现在返回假是为了防止原来的形式从做它自己的POST。
在服务器端,我有很简单的东西,如:
def handler(request, data):
return HttpResponse('{}', 'application/json')
客户顺利通过Ajax请求将数据发送到服务器。服务器还将{}空括号返回给客户端。但不是回调函数被调用,看到和警报,而是整个页面重新加载,我只在新页面上看到{}。
正如我所说我已经尝试了很多不同的东西,但我认为我错过了一些大象......任何想法?哦,我使用最新的Mozilla Firefox,但我不认为这是一个浏览器的具体问题...