jQuery.parseJSON()
을 사용하여 jQuery.ajax()
PHP 스크립트 호출 응답을 구문 분석합니다. 일부 서버에서는 코드 0000
이 응답 문자열의 시작 부분에 삽입되어 jQuery.parseJSON()
이 실패하는 경우를 제외하고 코드가 작동합니다.JSON 문자열에 문자 추가
나는 그 캐릭터가 어떻게 삽입되고 있는지 알 수 없다. 응답을 표시하기 전에 문자가 PHP로 인코딩 된 문자열에 없습니다.
PHP 스크립트와 JSON 문자열을 생성한다 : 여기서
는 시나리오$html = json_encode(myArrayOfValues);
echo $html
jQuery.ajax 안으로 인코딩 된 문자열을 수신한다 : I 기능 부가 고정 문제에
....success: function(html, textStatus){
var response = jQuery.parseJSON(html);
....
그 삽입 된 문자를 제거하고 변경 함 :
var response = jQuery.parseJSON(html);
에 :
var response = parseJSONResponse(html);
장소 :
function parseJSONResponse(html){
var foundChar = html.indexOf("{");
if(foundChar > 0){
html = html.substring(foundChar);
}
var response = jQuery.parseJSON(html);
return response;
}
궁극적으로 작동하지만 삽입 된 문자가 어디에서 오는지 알고 싶습니다하고이를 방지 할 수있는 방법이있는 경우 삽입 .
[질문 및 답변 도움말 편집 방법] (http://stackoverflow.com/editing-help)을 읽어보십시오. – gdoron
Dammit Felix, 오늘 편집 작업이 빠릅니다. :) –
파일에 다른'echo's가 있습니까? 서버 측 프레임 워크를 사용하고 있습니까? 어떤 서버를 사용하고 있습니까? –