Form组件,用ajax发送到后台需要的注意事项
生活随笔
收集整理的這篇文章主要介紹了
Form组件,用ajax发送到后台需要的注意事项
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
form通過ajax發(fā)送到后臺,
后臺無法直接返回跳轉頁面,因為,ajax無法接受跳轉命令
后臺驗證完成后,錯誤信息因為不是常規(guī)Python的字典格式,所以需要引入ErrorDict
?
?
views文件
import jsondef ajax(request):if request.method =="GET":obj=AjaxForm()return render(request,'ajax.html',{"obj":obj})else:ret={"status":"dd",'message':None}obj=AjaxForm(request.POST)if obj.is_valid():print(obj.cleaned_data)ret['status']='money'return HttpResponse(json.dumps(ret))else:print(obj.errors)from django.forms.utils import ErrorDict #因為判斷后的錯誤信息不是Python常規(guī)數(shù)據(jù)類型,所以需要繼承ErrorDictret['message']=obj.errorsreturn HttpResponse(json.dumps(ret))?
?
?
html文件
<!DOCTYPE html> <html lang="en"> <head><meta charset="UTF-8"><title>Title</title> </head> <body><form action="" method="post" novalidate id="formData">{% csrf_token %}{{ obj.as_p }}<input type="button" value="提交" id="btn"> </form><script src="/static/jquery-3.3.1.js"></script> <script>$(function () {$('#btn').click(function () {$.ajax({url:'/ajax/',type:'post',data:$('#formData').serialize(),dataTypr:"JSON",success:function (arg) {//arg:狀態(tài),錯誤信息if (arg.status == 'money'){window.location.href='http://www.baidu.com'}console.log(arg);}})})})</script> </body> </html>?
轉載于:https://www.cnblogs.com/lhqlhq/p/9184178.html
總結
以上是生活随笔為你收集整理的Form组件,用ajax发送到后台需要的注意事项的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: android wifi RSSI达到阈
- 下一篇: win10中Android Studio