jQuery 양식 플러그인은 jQuery v1.4.2를 기반으로 JSON 데이터를 반환 할 때 오류를보고합니다.
원래 배경 출력 데이터 형식은 다음과 같습니다. {SiteName : 'Developer Network', SiteUrl : 'www.aaa.net', Level : 10} { "siteName": "Developer Network", "SiteURL"으로 변경해야합니다. "www .aaa.net", "레벨": 10}
즉, jQuery 버전 1.4.2가 Parsejson 방법에서 정기적 인 판단을 추가하기 때문에 이름은 이중 인용문으로 포함되어야합니다.
if (/^] 개 : : {} s ] uper (/\ (? : [ " \/bfnrt] | u [0-9a-fa-f] { 4})/g , "@") .replace (/"[^" \ n r]*"| true | false | null |-? d+(? : . d*)? (? : [ee] [+-]? d+)?/g , "]") .replace (/(? :^| : |,) (? : s* [)+/g, "")) { // 기본 JSON 파서를 먼저 사용해보십시오 } 또 다른 { |
jQuery 양식 플러그인 수정 위치
if (scr || s.textArea) { // TextRea에 사용자 임베디드 응답이 있는지 확인하십시오 var ta = doc.getElementsByTagName ( 'textArea') [0]; if (ta) { xhr.responsetext = ta.value; } else if (scr) { // JSON 응답 주위에 사전을 주입하는 브라우저를 설명합니다 var pre = doc.getElementsByTagName ( 'pre') [0]; if (pre) { xhr.responsetext = pre.innerhtml; } } } else if (s.datatype == 'xml'&&! xhr.responsexml && xhr.responsetext! = null) { xhr.responsexml = toxml (xhr.responsetext); } |
수정 :
if (scr || s.textArea) { // TextRea에 사용자 임베디드 응답이 있는지 확인하십시오 var ta = doc.getElementsByTagName ( 'textArea') [0]; if (ta) { xhr.responsetext = ta.value; } else if (scr) { // JSON 응답 주위에 사전을 주입하는 브라우저를 설명합니다 var pre = doc.getElementsByTagName ( 'pre') [0]; if (pre) { xhr.responsetext = pre.innerhtml; } else xhr.responsetext = doc.body.innerhtml; } } else if (s.datatype == 'xml'&&! xhr.responsexml && xhr.responsetext! = null) { xhr.responsexml = toxml (xhr.responsetext); } |
원본 주소 : http://www.vifo.net/program/javaScript/10090191.shtml