2016-04-26 4 views
1

でLOCATION.HREFで作業していない誰もがこの問題の答えを持っていますか?最新のSafariはjQueryの

は基本的に私はここに上の他の質問からすべての可能な答えを使い果たしていると私は助けのための新しいコールを開くために駆動しています!

問題...私は形式でログを持っているページ内のログを持っています。送信ボタンには、jQueryのクリック機能が添付されています。 click関数は、DBをチェックするPHPへのajax呼び出しを持っています。成功すると、その場所は別のページにリダイレクトされます。これは、Safariの最新バージョンを除くすべてのブラウザで動作します。私はまた、さまざまなバージョンのjQueryを試しました。それは非常にイライラしています。以下のコードを参考にしてください。

任意の提案/ソリューションをいただければ幸いです。

ありがとうございます。

------------更新----------この問題に遭遇

誰でも、私が思いついた解決策を再書き込みすることでしたAngularJSのソリューション私は同じことをお勧めします!

これが役に立ちます。

------------ HTML --------------

<form id="loginFRM" style="text-align: center;"> 
     <input style="margin:20px; padding-left:5px;" id="username" name="username" type="text" placeholder="Username..."> 
     <br> 
     <input style="margin:20px; padding-left:5px;" id="password" name="password" type="password" placeholder="Password..."> 
     <br> 
     <input style="margin:20px; background-color: white; border: none; padding:10px; padding-left:30px; 
      padding-right:30px;" id="loginBtn" type="submit" value="Login" onclick="return false;"> 
    </form> 

---------- jQuery- ---------

$(document).ready(function(){ 
    $('#loginBtn').click(function(){ 
    var username = $("#username").val(), 
      password = $("#password").val(); 

    if(username != "" && password != ""){ 
     $.ajax({ 
     type: "GET", 
     url: './server/index.php', 
     data: { 
      username: username, 
      password: password 
     }, 
     success: function(response) 
     { 
      rowCount = response.ResultSet.RowCount; 
      if(rowCount > 0){ 
       window.setTimeout(function(){ location.href = "index.html"; },0); 
       return false; 
      } 
      else{ 
      alert('Incorrect details'); 
      } 
     } 
     }); 
    }else{ 
     alert('Incorrect details'); 
    } 

    return false; 

    }); 
}); 

答えて

0

この問題を遭遇した誰もが私が思いついた解決策は、AngularJSのソリューションを書き直すことでした。私は同じことをお勧めします!

1

それを試してみてください。

------------ HTMLを--------------

<form id="loginFRM" style="text-align: center;"> 
     <input style="margin:20px; padding-left:5px;" id="username" name="username" type="text" placeholder="Username..."> 
     <br> 
     <input style="margin:20px; padding-left:5px;" id="password" name="password" type="password" placeholder="Password..."> 
     <br> 
     <input style="margin:20px; background-color: white; border: none; padding:10px; padding-left:30px; 
      padding-right:30px;" id="loginBtn" type="submit" value="Login"> 
    </form> 

---------- jQuery ---- ------

$(window).load(function(){ 
    $('#loginBtn').click(function(event){ 
    event.preventDefault(); 
    var username = $("#username").val(), 
      password = $("#password").val(); 

    if(username != "" && password != ""){ 
     $.ajax({ 
     type: "GET", 
     url: './server/index.php', 
     data: { 
      username: username, 
      password: password 
     }, 
     success: function(response) 
     { 
      rowCount = response.ResultSet.RowCount; 
      if(rowCount > 0){ 
       window.setTimeout(function(){ location.href = "index.html"; },0); 
       return false; 
      } 
      else{ 
      alert('Incorrect details'); 
      } 
     } 
     }); 
    }else{ 
     alert('Incorrect details'); 
    } 

    return false; 

    }); 
}); 
+0

おかげで、しかし、同じことが起こります。マイページには、だけではなく、jQueryの(ドキュメント).ready() –

+0

が1つのより試み、 使用jQueryの(ウィンドウ).LOAD()、私はまた、コードの上にあなたを更新したことができ、次のページに再直接なしで更新されます直接使用することができます。 :) –

+0

@JoshEdwardsの –

関連する問題