2011-04-14 4 views
2

jquery의 게시 api에 문제가 있습니다.Jquery post> 성공하지 못함

$(".MGdi").click(function() { 
     id=$(this).attr("rel") 
     $.post('Mdeger.asp?cmd=MG', { id: id, drm: $(this).html()} , 
     function(data) { 
      var $response=$(data); 
       var snc = $response.find('#snc').html(); 
      alert(snc); 
     },"application/x-www-form-urlencoded"); 
    }); 

또 다른 방법은 다음과 같습니다

$(".Pasif").click(function() { 
    id=$(this).attr("rel") 
    $.post('Mdeger.asp?cmd=Pasif', { id: id, drm: $(this).html()} , 
    function(data) { 
     $(this).html(data); 
     alert(data) 
    },"application/x-www-form-urlencoded"); 
}); 

모든 서버 쪽하지만 클라이언트 측의 성공 기능은 아무것도하지 않습니다에 OK입니다. 기본 코드도 alert("hoho")과 같습니다. 성공하지 못했습니다.

+0

나는 해결책을 찾지 못했지만이 문제가 있으면 jax를 사용하는 것이 좋습니다 :) –

답변

2

이것은 대개 응답을 구문 분석 할 수없는 경우 발생합니다. 방화 광 또는 유사한 디버깅 도구를 사용하여 응답을 확인해야합니다.

특히 json 데이터를 예상하는 메소드는 응답을 엄격하게 검증하고 무효 한 것이 있으면 아무 것도, 오류가 없으며 경고도없고 예외도 발생하지 않습니다.

콜백 기능이 실행되지 않으면 응답이 올바르지 않은 것으로 의심해야합니다.

// 터키어는

을 özet uzun lafın kısası dönüş değerinde BIR terslik varsa dönüş fonksiyonu çalışmayacaktır. Sunucudan gelen deeyerleri iyice kontrol etmekte fayda var. jquery dönüş değerinde veya dönüş fonksiyonunda bir hata olursa seni uyarmadan işi sonlandırıyor.

2

이 문제도 발생했습니다. 내가 AJAX를 같은 도메인으로 호출했지만 다른 포트에서는 보안상의 이유로 자바 스크립트에서 허용되지 않는다.

더 많은 정보를 원하시면이 관련 질문을 참조 :

How do I send an AJAX request on a different port with jQuery?

내가 AJAX 호출이 POST 것이 매우 놀랐습니다/I는 서버 로그를보고 확인 할 수 있었다 서버 (에 GET) 그러나 응답은 결코 읽히지 않았다. 나는 보내고받는 것이 모두 허용되지 않을 것이라고 생각했을 것이다.

1

나는이 오류가 너무 바보 같은 문제가있다 : 내 JS에서 dataType을 "json"으로 설정했지만 호출 된 페이지가 일반 HTML을 반환했다. 그리고 이것은 성공 함수를 전혀 발사하지 않는 원인이됩니다.

관련 문제