아약스와 배경에 데이터를 제출
{# <! DOCTYPE html로> #} <HTML LANG = "EN"> <head> <메타 문자 집합 = "UTF-8"> <제목> 제목 </ 제목> <스크립트 SRC = "/ 정적 / JQuery와 - 3.2. 1.min.js "> </ script> <스타일> .SP { 색상 : 빨강; } </ 스타일> </ head> <body> <p>姓名<입력 유형 = "텍스트"> </ p> <p>密码: <INPUT TYPE = "비밀번호"> </ p> <p> < 버튼 클래스 = "서브">提交</ 버튼> <스팬 클래스 = "SP"> </ SPAN> </ p> <script> 함수 foo () { $ ( "SP.") HTML ( "."); } $ ( ". 하위")을 클릭 (함수 () {. $ 아약스 ({ URL : "/ demo_ajax /", 유형 : "POST"를, 데이터 : { 사용자 이름 : $ ( "텍스트") 발 (),. 비밀번호 : $ ( "비밀번호") 발 (). }, 성공 : 기능 (데이터) { var에 데이터 = JSON.parse (데이터); 만약 (! 데이터 [ "플래그"]) { $ ( ". SP"). HTML ( "用户名或密码错误") 의 setTimeout (foo는, 3000) } } }) }) </ script> </ body> </ HTML>
버그 리포트를 제출 이러한 방식의 프론트 엔드는 더 증가 csrf_token가 없기 때문에 금지, 대신 양식의 제출이 양식을 사용한다 :
어떻게이 문제를 해결하기 위해? 세 가지 방법으로이 문제를 해결하는 일반적인 방법으로,이 세 가지 방법을 사용하는 방법에 대해 다음 있습니다 말했다 :
한 가지 방법 :
아약스 요청 값 제출의 시간을 사전에 그에게 제공 : 함수 foo () { "$ (". SP ") HTML ("); } (. 하위 ") $"를 클릭을 (함수 () {. ### #################################### $ .ajaxSetup ({ 데이터 : {csrfmiddlewaretoken : '{{csrf_token }}} }); ####################################### $ 아약스 ( { URL : "/ demo_ajax /" 유형 : "POST가" 데이터 : { 사용자 이름 : $ ( "텍스트") 발 () ,. 비밀번호 : $ ( "비밀번호"). 발 () }, 성공 : 기능 (데이터) { IF (! 데이터 [ "깃발"]){ VAR = JSON 데이터.(데이터)를 분석; IF (! 데이터 [ "플래그"]) { $ ( ". SP"). html로 ( " 사용자 이름 또는 암호가 올바르지 않습니다"), 에서는 setTimeout (foo는, 3000) } } }) })
두 번째 방법 :
본체 부 : <form 조치 = ""> {%의 csrf_token의 %} <P> 이름 <INPUT 타입 = "텍스트"> </ P> <P> 비밀 <INPUT 타입 = "비밀번호"> </ P> < / FORM> <ρ-> <Button 클래스 = "서브"> 제출 </ 버튼> <스팬 클래스 = "SP"> </ SPAN> </ ρ-> 버튼 그렇지 않으면 제출을 얻기 위해 기본값으로, 외부에 쓰고 --- -------------------------------------------------- ----------------------------------- 여기 JS 코드 : 함수 foo () { $ ( "SP. ") .html 중에서 (" "); } $ ("서브. ")를 클릭 (함수 (.) { $ 아약스 ({ URL :"/ demo_ajax / ", 유형"POST ", 데이터 : { 사용자 이름 : $ ("텍스트 ") 발 (),. 암호 : $ ( "비밀번호"). 발 () csrfmiddlewaretoken : $ ( "[이름 = 'csrfmiddlewaretoken']") 발 (). } 성공 : 기능 (데이터) { VAR 데이터 = JSON.parse (데이터 ); 만약 (! 데이터 [ "플래그"]) { $ ( ". SP"). HTML ( "用户名或密码错误") 의 setTimeout (foo는, 3000) } } }) })
세 가지 방법 :
함수 foo () { $ ( "SP.") HTML ( "."); } $ ( ". 하위") ((클릭 기능) {. $ 아약스 ({ URL : "/ demo_ajax /" 유형 : "POST", 헤더 : { "X-CSRFToken". $ 쿠키 ( 'csrftoken' )}, 데이터 : { 사용자 이름 : $ ( "텍스트".) 발 (), 비밀번호 : $ ( "비밀번호".) 발 () }, 성공 : 기능 (데이터) { var에 데이터 = JSON.parse (데이터 ) ! (만약 데이터 [ "플래그"]) { $ ( ". SP") HTML ( "用户名或密码错误").
당신이 양식 양식을 제출할 수는 형태로 양식을 제출할 수있는 세 가지 방법 :
원본 주소 : https://www.cnblogs.com/52-qq/
아약스와 배경에 데이터를 제출
{# <! DOCTYPE html로> #} <HTML LANG = "EN"> <head> <메타 문자 집합 = "UTF-8"> <제목> 제목 </ 제목> <스크립트 SRC = "/ 정적 / JQuery와 - 3.2. 1.min.js "> </ script> <스타일> .SP { 색상 : 빨강; } </ 스타일> </ head> <body> <p>姓名<입력 유형 = "텍스트"> </ p> <p>密码: <INPUT TYPE = "비밀번호"> </ p> <p> < 버튼 클래스 = "서브">提交</ 버튼> <스팬 클래스 = "SP"> </ SPAN> </ p> <script> 함수 foo () { $ ( "SP.") HTML ( "."); } $ ( ". 하위")을 클릭 (함수 () {. $ 아약스 ({ URL : "/ demo_ajax /", 유형 : "POST", 데이터 : { 사용자 이름 : $ ( "텍스트"). 발 (), 비밀번호 : $ ( "비밀번호"). 발 () }, 성공 : 기능 (데이터) { var에 데이터 = JSON. (데이터)를 분석; 만약 (! 데이터 [ "플래그"]) { $ ( ". SP"). HTML ( "用户名或密码错误") 의 setTimeout (foo는, 3000) } } }) }) </ script> </ body> </ HTML>
버그 리포트를 제출 이러한 방식의 프론트 엔드는 더 증가 csrf_token가 없기 때문에 금지, 대신 양식의 제출이 양식을 사용한다 :
어떻게이 문제를 해결하기 위해? 세 가지 방법으로이 문제를 해결하는 일반적인 방법으로,이 세 가지 방법을 사용하는 방법에 대해 다음 있습니다 말했다 :
한 가지 방법 :
아약스 요청 값 제출의 시간을 사전에 그에게 제공 : 함수 foo () { "$ (". SP ") HTML ("); } (. 하위 ") $"를 클릭을 (함수 () {. ### #################################### $ .ajaxSetup ({ 데이터 : {csrfmiddlewaretoken : '{{csrf_token }}} }); ####################################### $ 아약스 ( { URL : "/ demo_ajax /" 유형 : "POST가" 데이터 : { 사용자 이름 : $ ( "텍스트") 발 () ,. 비밀번호 : $ ( "비밀번호"). 발 () }, 성공 : 기능 (데이터) { VAR = JSON 데이터.(데이터)를 분석; IF (! 데이터 [ "플래그"]) { $ (. "SP"). HTML ( "사용자 이름 또는 암호가 올바르지 않습니다"), 에서는 setTimeout (foo는, 3000) } } }) })
두 번째 방법 :
본체 부 : <form 조치 = ""> {%의 csrf_token의 %} <P> 이름 <INPUT 타입 = "텍스트"> </ P> <P> 비밀 <INPUT 타입 = "비밀번호"> </ P> < / FORM> <ρ-> <Button 클래스 = "서브"> 제출 </ 버튼> <스팬 클래스 = "SP"> </ SPAN> </ ρ-> 버튼 그렇지 않으면 제출을 얻기 위해 기본값으로, 외부에 쓰고 --- -------------------------------------------------- ----------------------------------- 여기 JS 코드 : 함수 foo () { $ ( "SP. ") .html 중에서 (" "); } $ ("서브. ")를 클릭 (함수 (.) { $ 아약스 ({ URL :"/ demo_ajax / ", 유형"POST ", 데이터 : { 사용자 이름 : $ ("텍스트 ") 발 (),. 암호 : $ ( "비밀번호"). 발 () csrfmiddlewaretoken : $ ( "[이름 = 'csrfmiddlewaretoken']") 발 (). } 성공 : 기능 (데이터) { VAR 데이터 = JSON.parse (데이터 ); 만약 (! 데이터 [ "플래그"]) { $ ( ". SP"). HTML ( "用户名或密码错误") 의 setTimeout (foo는, 3000) } } }) })
세 가지 방법 :
함수 foo () { $ ( "SP.") HTML ( "."); } $ ( ". 하위") ((클릭 기능) {. $ 아약스 ({ URL : "/ demo_ajax /" 유형 : "POST", 헤더 : { "X-CSRFToken". $ 쿠키 ( 'csrftoken' )}, 데이터 : { 사용자 이름 : $ ( "텍스트".) 발 (), 비밀번호 : $ ( "비밀번호".) 발 () }, 성공 : 기능 (데이터) { var에 데이터 = JSON.parse (데이터 ) ! (만약 데이터 [ "플래그"]) { $ ( ". SP") HTML ( "用户名或密码错误"). }) })
당신이 양식 양식을 제출할 수는 형태로 양식을 제출할 수있는 세 가지 방법 :