지난 경험을 토대로
이 ajax 요청의 매개변수에 추가되었지만 이번에는 작동하지 않았습니다.
Fiddler 결과를 여러 번 관찰한 후 유효하지 않다는 사실을 확인한 후 JQuery.Validation.js를 열어 답을 찾아야 했습니다.
원격 코드에서 다음을 찾았습니다.
var data = {};
data[element.name] = value
$.extend(true, {
url: param ,
mode: "abort",
port: "validate" element.name,
dataType: "json",
data: data,
....
플러그인이 제출된 데이터를 정의하고 검증할 데이터를 json 형식으로 서버에 직접 전송하는 것으로 나타났습니다. 양식에 대한 인코딩 정의가 유효하지 않으며 값이 강제로 encodeURIComponent(
후기:
이 방법은 서버 코드에서 처리할 때 데이터를 명시적으로 디코딩해야 하며 그 다양성이 매우 낮습니다. >
유효성 검사 플러그인이 입력 데이터를 처리하는 것을 방지하기 위해 자체 옵션을 사용하여 유효성 검사의 옵션 정의를 재정의하려고 했습니다.
코드 복사
유형: "post",
dataType: "json",
contentType: "application/x-www-form-urlencoded; charset=utf-8",
data: { txt1 : function() { return $("#txt1").val () } }
}
그런 다음 서버 측 코드에서 해당 데이터를 Form 데이터에서 가져옵니다. 따라서 유효성 검사 수정을 피하고 내 요구 사항을 충족합니다.
원본 링크:
http://www.luyuliang.com/post/chinese-issue-in-jquery-validation-plugin.aspx