2011-05-03 3 views
0

먼저 코드입니다.PHP 파일에서 아약스 잘못된 JSON

PHP 파일 :

$data = DB::typeAlerte()->all(); 

    for($i=0;$i<sizeof($data);$i++) 
     $rep[] = $data[$i]['id']; 

    echo json_encode($rep); 

자바 스크립트 파일 :

myJ.ajax({ 
    type: 'POST', 
    url: '../lib/form/f_idTypeAlerte.php', 
    datatype:'json', 
    success: function(msg) { 
     alert(msg) 
     msg = myJ.parseJSON(msg); 
     alert(msg[0]) 
    }  
}); 

myJ.parseJSON(msg) 캐치이 오류 :이 오류가 왜 JSON 반면 Uncaught Invalid JSON: ["COURROIE","PNEUS ARRIERE","PNEUS AVANT","VIDANGE"] jquery-1.5.1.js:869ok

입니까?

답변

0

다음과 같이하십시오 :

myJ.ajax({ 
    type: 'POST', 
    url: '../lib/form/f_idTypeAlerte.php', 
    dataType: 'json', // <-- notice that this should be dataType, not datattype 
    success: function(msg) { 
     alert(msg[0]); 
    } 
}); 

은 또한 당신이 당신의 서버 스크립트가 적절한 application/json 컨텐츠 유형 HTTP 헤더를 설정 가지고 추천 할 것입니다.

+0

MSG되어야한다 문자열 MSG [0] 창 ', MSG [3] 창'C '이다. – canardman

+0

@canardman, 적절한 'Content-Type' 헤더를 설정하는 것에 대한 조언을 받았습니까? 또한'dataType : 'json'구문과 대문자'T'에 대한 의견도 보았습니까? –

+0

@Darin Dimitrov 죄송합니다. 이제 귀하의 조언 '데이터 유형'json''와'헤더 ("콘텐츠 유형 : 응용 프로그램/JSON"); PHP 파일의 첫 번째 행에'난 아무 것도, 아무 경고, 크롬 디버거 – canardman

0

dataType을 쓸 때 케이스 오류가 있습니다. 자바 스크립트는 대소 문자를 구분한다는 것을 잊지 마십시오. 이 대신

:

datatype:'json' 

dataType:'json' //T is uppercase