2011-10-27 2 views
8

JSON 형태로 jQuery ajax 호출을 통해 한 ASP.NET 페이지에서 다른 ASP.NET 페이지로 데이터를 게시하고 있습니다.jQuery.ajax 오류 응답 메시지 구문 분석

상황을 시뮬레이션 중이며, 아약스 호출에 오류가 발생합니다. 오류가 발생하면 응답 메시지가 표시되고이 HTML을 페이지의 요소에 할당해야합니다. jquery.ajax response

내가 변수, 크롬 디버거를 통해 조회 할 때 저를 보여주고, 그것이 내가 responseText에 필요한 정보를 포함 자바 스크립트 MSG가 : 여기

내가 메시지에서 무엇을 얻을 수 있습니다.

페이지에 표시 할 responseText 값을 얻으려면 어떻게해야합니까?

답변

14

JavaScript 변수 이름에는 대/소문자를 구분합니다. 귀하의 예에서는 msg 객체의 responseText 필드에 액세스하려했지만 대문자 'R'을 사용했습니다. 대신이 시도 :

msg['responseText'] 

또는 더 나은 스타일 :

msg.responseText 
+0

하나에 오류가 발생했습니다 있다고 가정합니다. – ZenMaster

+0

거의 =) 감사합니다. –

2

그것의 개체 때문에 당신이 볼 수 xhr.responseText

처럼
error: function(xhr, status, error) { 

    var err = eval("(" + xhr.responseText + ")"); 

    alert(err.Message); 

} 
+0

첫 번째 유혹은 eval을 사용하여 투표하는 것입니다 ... 그러나 이것은 정말로 잘됩니다 !! :-)이 답변을 주셔서 감사합니다. – richb01

2

를 액세스하기 위해 점 표기법을 사용 마우스 포인터 바로 아래의 코드 - 대문자 "R"이 아닌 "r"만 사용 :

msg['responseText'] 
1
<div id='error'></div> 

유 스타일 제안에 대한 msg

$('#error').html(msg.responseText)