2013-07-04 148 views
0

我一直在嘗試解決這個代碼幾個小時,我仍然無法使它的工作。表單提交'返回false'重新加載當前頁面

這是相當基本的:
我建立一個混合iOS應用程序,有需要的用戶登錄到我們的系統中的區域,我用Hammer.js處理觸摸事件。
因此,在頁面上,我有一個表單和一個提交按鈕。而在我的JS應用程序文件中,有到我的服務器檢查憑據的ajax請求。

雖然,它不起作用:我的表單不斷重新加載頁面,無論我做什麼。當它刷新窗口時,我的ajax請求沒有任何工作機會。

下面是HTML表單:

<div class="login-form-parent"> 
    <div class="login-form"> 
    <section> 
     <h2>Sign in to GraphiX Studios CPM</h2> 
     <form name="loginForm" id="login" method="post" submit="#" > 
     <fieldset> 
     <input type="text" name="login" id="loginEmail" placeholder="Username" autocapitalize="false" autocorrect="false" > 
     <input type="password" name="password" id="loginPass" placeholder="••••" > 
     <aside> 
      <label for="rememberLogin">Remember me</label> 
      <input type="checkbox" name="rememberLogin" id="rememberLogin" > 
     </aside> 
     <footer> 
      <input type="submit" name="submit" id="submitLogin" value="Login" > 
     </footer> 
     </fieldset> 
     </form> 
    </section> 
    </div> 
</div> 

兩個<div><aside><section><footer>標籤只是在這造型的目的。

這裏是JS代碼:

var loginEl = document.getElementById('submitLogin'); 
Hammer(loginEl, {tap_max_touchtime: 1000}).on("tap", loginFunctions); 
function loginFunctions() { 
    var usernameValidation = $("input#loginEmail").val(); 
    if (usernameValidation == "") { 
     $("#login_error").show(); 
     $("input#login").focus(); 
    return false; 
    } 
    var passwordValidation = $("input#loginPass").val(); 
    if (passwordValidation == "") { 
     $("#password_error").show(); 
     $("input#password").focus(); 
    return false; 
    } 
    if (usernameValidation != "" && passwordValidation != "") { 
     $.submit(function() { 
      var username = $('#loginEmail').val(); 
      var password = $('#loginPass').val(); 
      $.ajax({ 
       url: 'loginProcessing.php', 
       type: 'POST', 
       data: { 
        user: username, 
        pass: password 
       }, 
       success: function(response) { 
        if(response == '1') { 
         // Success 
         alert('Success'); 
        } else { 
         // Error 
         alert('Failed'); 
        } 
       } 
      }); 
      return false; 
     }); 
    } 
return false; 
} 

我不能調試我自己:我一直在嘗試了幾個小時不同的解決方案,我已經和谷歌堆棧溢出資源中搜索。

隨意清理或改善JS代碼。

回答

1

變化<input type="submit" name="submit" id="submitLogin" value="Login" ><input type="button" name="submit" id="submitLogin" value="Login" >

+0

該訣竅的開始!至少它沒有刷新頁面了。因爲它不再是一個提交按鈕,我不得不刪除'$ .submit(function(){' –

2

嘗試使用:

event.preventDefault(); 

,而不是返回false,在$ .submit功能

相關問題