2012-08-12 5 views
1

데이터를 테이블로 전송하는 모달 대화 상자가 있습니다. 사용자에게 제출의 성공/실패에 대한 피드백을주고 싶지만 성공 핸들러는 실행되지 않습니다.jquery ajax 성공 함수가 실행되지 않습니다.

내 코드는 내가 요청에서 반환 인해에 success이다 명확하게 볼 수 있습니다, 또 다른 버전 done 내 경우/다른 블록

방화범
success: function(data){ 
    if (data == "failure"){ 
    $("#submissionFailure").dialog("open"); 
    } else { 
    $("#submissionSuccess").dialog("open"); 
    var count= 3; 
    var id= setInterval(function(){ 
     count--; 
     if (count == 0) 
     $("#submissionSuccess").dialog("close"); 
    }, 1000); 
    } 
} 

로 정의했다

$.ajax({ 
    type: "POST", 
    url: "includes/phpscripts.php?action=submitWiki", 
    data: {"name": location, "location": locationName, "text": locationText, "user": userId}, 
    beforeSend: function(x){ 
    if (x && x.overrideMimeType){ 
     x.overrideMimeType("application/json;charset=UTF-8"); 
    } 
    }, 
    async: false 
}).done(function(data){ 
    if (data == "failure"){ 
    $("#submissionFailure").dialog("open"); 
    } else { 
    $("#submissionSuccess").dialog("open"); 
    var count= 3; 
    var id= setInterval(function(){ 
     count--; 
     if (count == 0) 
     $("#submissionSuccess").dialog("close"); 
    }, 1000); 
    } 
}); 

입니다 echo 문을 사용하지만 성공 함수는 건너 뛴다. done 줄에 중단 점을 직접 설정 했으므로 모든 내용이 건너 뜁니다.

또한 게시물이 데이터베이스에 기록됩니다.

답변

1

기본값 인 HTML/String 또는 XML이 기본값 인 누락 된 "dataType"은 내 머리 꼭대기에서 어느 것이지 기억이 안나지만 dataType :이 JSON으로 설정되지 않은 경우 JSON으로 작업한다고 말할 수 있습니다. 백엔드 피드백을 유효하다고 해석하지 않으며 본질적으로이를 무시합니다. 그래서 type: "POST"에서 크리스^당신 말처럼 dataType:"json"

+0

"하지만 JSON으로 작업하는 것을 말합니다."- 왜? 그들이 존재한다는 것을 나타내는 질문에는 아무것도 없습니다. –

+0

'x.overrideMimeType ("application/json; charset = UTF-8");'line ... – chris

+0

아, 네 말이 맞아. 내가 어떻게 그것을 놓쳤는 지 모르겠다. –

0

는, 데이터 유형을 추가 한 후, 그

data: {name: "location", location: "locationName", text: "locationText", user: "userId"} 

따옴표로

data: {"name": location, "location": locationName, "text": locationText, "user": userId} 

두 번째 매개 변수 주위해야이 줄을 변경 넣어 그들이하지 않는 한 변수입니다. 첫 번째 매개 변수는 그렇게 남을 수 있습니다.

+1

개체의 키를 따옴표로 묶어도 아무 영향이 없으며 두 방법 중 어느 것이 유효합니다. –

+0

흠, 고마워. 그걸 몰랐어. –

관련 문제