2015-01-25 3 views
0

enter image description hereJQuery와 아약스 요청에 콘솔에서 응답이 없습니다 나는 된답니다 PHP 함수에 다음 JQuery와 아약스 호출을하고

:

$.ajax({ 
         type:"POST", 
         url: "AjaxUpdate/getHtml", 
         data:{ u : 'http://stackoverflow.com/' }, 
         dataType: 'json', 
         success: function(data) { 
          console.log(data); 

         }, 

         error: function(jqXHR, textStatus, errorThrown) { 
           console.log('error'); 
           console.log(jqXHR,textStatus, errorThrown); 
         } 
        }); 

요청 PHP 함수는 다음과 같습니다

public function getHtml() { 

     $url = $_POST['u']; 
     $result = file_get_contents($url); 
     return json_encode($result); 
} 

이 문제를 어떻게 해결할 수 있습니까?

편집 : 콘솔에 오류가 표시됩니다 : 당신은 당신이 파일 내부의 함수를 호출하고 있는지

error 
reply_detail:4667 Object {readyState: 4, getResponseHeader: function, getAllResponseHeaders: function, setRequestHeader: function, overrideMimeType: function…} "parsererror" SyntaxError: Unexpected end of input {stack: (...), message: "Unexpected end of input"}message: "Unexpected end of input"stack: (...)get stack: function() { [native code] }set stack: function() { [native code] }__proto__: Error 
+0

이제 빛나는 시간입니다. 귀하의 기능은 getHtml이라고합니다. 맞습니까? 그리고 당신의 아약스 함수는 json이 당신이 말한 것처럼'dataType : 'json'을 기대하고 있습니다. 내 대답에서 말했듯이, 어떤 일이 일어날 수 있습니다. 내 대답의 모든 항목을 확인하고 jquery 설명서를 자세히 살펴보고 오류를 기록하십시오. 이것은 내가 당신을 도울 수있는 가장 먼 길입니다. 이제 당신의 힘을 보여줄 때입니다. –

답변

1

일부 일이 발생할 수 있습니다.

PHP를 모르지만, getHtml 정말 JSON을 반환하나요?

아마도 반환하는 콘텐츠를 구문 분석하지 못했습니다. JQuery $ .ajax dataType 속성에는 다른 옵션이 있습니다.

어떤 시점에서 실패 할 수 있으므로 success 함수를 실행하지 않습니다. error 기능을 추가하고 데이터를 기록하십시오. JQuery documentation은 매우 유용하고 풍부합니다.

또한 적어도 ASP.NET에서 나는 항상이를 수행해야합니다. data: JSON.stringify({ u : 'http://stackoverflow.com/' })으로 변경하십시오.

+0

게시물을 업데이트했으나 콘솔에서 오류가 발생했음을 알 수 있습니다. 그러나 확실하지 않습니다. 그것은 말합니다 : – user61629

+0

오류 함수는 3 개의 매개 변수를 받고, 당신은 하나만 사용하고 있습니다. 3 개의 매개 변수를 취하도록 코드를 수정하고 모두 기록하십시오. 또한 더 나은 질문을하기 위해 콘솔 출력을 게시하여 잘못된 결과를 볼 수 있습니다. –

+0

업데이트 된 콘솔 출력을 포함하여 더 많은 수정 내용이 있습니다. – user61629

0

있습니까? 으로 함수를 호출해야합니다.으로 호출해야합니다.

getHtml(); 
+1

더 설명해 주시겠습니까? – user61629