我是所有django的新手,ajax的东西..我在网上阅读了一些教程,我正在尝试制作一个简单的表格,通过ajax发布一些信息。
这是我的模板的jquery部分:
<script type="text/javascript">
$(document).ready(function () {
$('#iEventAjax').submit( function()
{
var name = $('input[name=event_name]');
var data = name.val();
$.ajax({
type:"POST",
url:"/mediaplanner/edit/",
data:data,
success: function(msg){
alert(msg);
}
});
});
视图代码:
def iEventAjax(request):
if request.is_ajax():
return HttpResponse("ok")
else:
return render_to_response("iEventSave.html",{})
好吧,当我发布内容时,它返回iEventSave.html而不是给出“ok”消息。 任何建议,哪部分我失败了?
答案 0 :(得分:5)
此代码发生了什么:
在jQuery中,你需要从提交函数返回false,或者在事件jQuery Submit Docs上调用preventDefault
所以:
$(document).ready(function () {
$('#iEventAjax').submit( function()
{
var name = $('input[name=event_name]');
var data = name.val();
$.ajax({
type:"POST",
url:"/mediaplanner/edit/",
data:{my_data:data},
success: function(msg){
alert(msg);
}
});
return false;
});
答案 1 :(得分:0)
您希望var data = name.serialize();
创建查询字符串参数。