2013-12-12 94 views
0

我使用這個小的jQuery用一個PHP腳本的AJAX請求,檢查一個文本框的輸入後:處理提交 - 行動「的onsubmit事件」

$(document).ready(function(){ 
    $("#submit").click(function(e){ 
    e.preventDefault(); 

    var username = $("#username-field").val(); 
    if(username) { 
     $.ajax({ 
      url: 'checkinput.php', 
      data: {data: JSON.stringify(username)}, 
      type: 'POST', 
      dataType: "json", 
      success: function (data) { 
       if(data.result == 0) { 
        alertify.alert(data.error); 
       } 
       if(data.result == 1) { 
        $("#submit")[0].submit(); 
       } 
      } 
     }); 
    } else { 
     alertify.alert("You forgot to type username"); 
    } 
    }); 
}); 




<form action="" method="POST"> 

Username: 
<input type="text" name="username" placeholder="Username..." id="username-field"> 

<input type="submit" name="submit" id="submit" value="send"> 

</form> 

我想要什麼:

如果返回「data.result」 ==「0」,則顯示警報消息和留頁上(沒有刷新)

如果返回「data.result」 ==「1」,則處理提交操作。

我用preventDefault來停止這個提交動作和第二個if子句來處理提交動作,但它不工作......任何人都可以幫助我? 問候

回答

0

您需要添加ID爲<form id="myform" action="your page name" method="POST" >

使用,

$("#myform").submit(); 

代替

$("#submit")[0].submit(); 
+0

OK大部分現在的工作,感謝,但如果返回的數據。結果== 0,沒有提示消息顯示,但頁面已刷新,爲什麼?我該如何解決這個問題? – user3094856

+0

可能是'alertify'測試的原因可以使用'alert'並且測試你得到了警報,否則可以在這裏更新console.log錯誤 –

+0

在語句結尾添加'return false;'並且檢查 –