2011-08-18 6 views
0

제목이 거의 다 나와 있습니다. 나는 내가 그것에, 메신저 좋지 않다 작성한 JQuery와 코드가 있지만 내가 얻을 것입니다 :Jquery는 양식을 제출하지만 내 div를 퇴색하지 않습니다.

$("#myForm").submit(function(){ 

      //alert($(this).serialize()); 

      $.post("submit.php", $(this).serialize(), function(data){ 
       if(data == success) { 

       $("#add_vote").fadeOut("fast"); 
       $("#verification_sent").fadeIn("fast"); 
       $("#wrong").fadeOut("fast"); 

       } else { 

       $("#wrong").fadeIn("fast"); 

       } 
      }); 

      return false; 
     }); 

양식이 잘 제출됩니다하지만 내가 가지고있는 fadeIn 및 페이드 아웃의이 작동하지 않습니다. 왜 그런지 아십니까?

+0

라는 변수의 값이 무엇 :

"submit.php" // the url (OK) $(this).serialize() // The data (OK) function(data){ // The callback on success 

그리고 $.ajax 방법에 대한 유일한 도우미 기능을, 마녀는 오류 콜백이 '성공'이 있어야할까요? 코드에서 정의 된 위치는 어디입니까? –

+0

PHP 파일에서 성공을 인쇄합니다. 그것이 작동하도록되어있는 방식이 아닌가? – Paparappa

+2

@Paparappa - 그러면 "성공"을 따옴표로 묶어야합니다. 그것은 JavaScript 변수가 아닌 문자열입니다. –

답변

1

가에서 success 무엇인가

if(data == success) { 

은 아마 당신은 의미 : 아니면

if(data == "success") { 

당신은 어쩌면 $.post를 오해 기능?

$.post("submit.php", $(this).serialize(), function(data){ 

그것을 깰 수 있습니다 :

var ajaxObj = $.ajax({ 
    type: 'POST', 
    url: "submit.php", 
    data: $(this).serialize() 
}); 
ajaxObj.success(function(){ 
    // Success 
}); 
ajaxObj.error(function(){ 
    // Error 
}); 
+0

내가 의미했던 성공 원인에 인용문을 추가했습니다. 하지만 내 div 여전히 퇴색하지 않을. 그리고 나는 "성공"을 PHP 파일에 인쇄합니다. – Paparappa

3

submit.php가 반환하는 내용과 data의 내용을 확인하십시오.

if(data == success) { 

이것은 의심스러운 것으로 보입니다. if (data == "success") {을 의미 했습니까? (success 아마 정의되지 않은 변수이다; "success"은 문자열입니다.)

+0

따옴표로 의미를 바꾸었지만 여전히 변경되지 않았습니다. 흠. – Paparappa

+0

그러면 submit.php가 반환 한 것을 확인하고, 무엇이'data'인지 확인하십시오. – arnaud576875

관련 문제