基于Django与ajax之间的json传输方法

前端使用ajax进行数据交互时:

$.ajax({
 cache: false,
 type: "POST",
 url: {% url ''%}
 data: $('#form').serialize(),
 async: true,
 success: function (data) {
  if (data.status == 'success') {
   $('#form')[0].reset();
   alert("提交成功")
  } else if (data.status == 'fail') {
   $('#tip').html(data.msg)
  }
 },
});

后台代码:

if form.is_valid():
 
return HttpResponse("{'status':'success'}", content_type='application/json')

后台可以接收数据,并且可以返回数据给前台,但前台并不能解析出来,

当改成下面这个的时候,即将json里面的内容从单引号改成双引号,同时将外面的双引号改成单引号,前端即可正常解析

if form.is_valid():
 return HttpResponse('{"status":"success"}', content_type='application/json')

目测是由于标准json格式的问题。

相关推荐