2011-07-12 86 views
0

這是我的AJAX功能和這個ajax函數怎麼了?

$('#save_form_3').button({ 
    icons: { 
     primary: "ui-icon-disk" 
    } 
}) 
.click(function (event) { 
    if($('#guarantor_details').validate().form()){ 
    var form_3_data = $("#guarantor_details").serialize(); 
    $.ajax({ 
      type: "POST", 
      url: "insert.php", 
      data: form_3_data, 
      success: function(response, textStatus, xhr) { 
       alert(response); 
       if(response=="success"){ 
        alert(response); 
       } 
      }, 
      error: function(xhr, textStatus, errorThrown) { 

      } 
    });  
    return false;  
    } 
}); 

第一警報給我留言「成功」和第二警報不執行。似乎如果條件不成功的功能下工作。

任何想法爲什麼它不?

即時通訊使用jquery-1.6.2.min.js。

也許問題在jquery 1.6.2或者我做錯了什麼?

感謝

if($SQL_INSERT){ 
    echo "success"; 
}else{ 
    echo mysql_error(); 
} 

這就是insert.php反正

if($.trim(response)=="success")工作

+4

嘗試'if($。trim(response)==「success」)'只是爲了踢腿,我的直覺是你在「成功」的一側有一個額外的空間。 –

+1

修剪響應,然後比較它..響應可能包含空格 –

+0

無論如何,您應該使用'console.log'而不是'alert'來調試 – IcanDivideBy0

回答

2

嘗試刪除任何空格/在你insert.php文件中的標記外換行。

+0

+1爲您的第一個答案:) – naveen

+0

if($ SQL_INSERT){ \t \t回聲「成功」; \t} else { \t \t echo mysql_error(); \t \t}這就是insert.php if($。trim(response)==「success」)的作品 –

1

也許你可以使用一個簡單的正則表達式?

相反的response=="success",嘗試/success/.test(response)

如果成功,是在響應字符串的任何地方這將返回true。