2016-05-10 8 views
0

3ページからなるフォームがあります。私は、キーボードが消えるようにしようとしていて、GOボタンが押されたときにページを元のサイズにズームするようにしています。複数のページを持つIphoneフォームでキーボードを消す方法

私は、次のJS機能試してみました:

$(document).on("keyup", "input", function(event) { 
    // If enter is pressed then hide keyboard. 
    if(event.keyCode == 13) { 
     $("input").blur(); 
    } 
}); 

をそれは、最初のページに私を戻します。 js fiddleへのリンク 上記のJS機能では、最初のページで機能しますが、2番目のページで機能を使用するかどうかを指定します.GOを押すと、最初のページに戻ります。

これは奇妙な動作のようです。機能がなければ、最初のページでGOボタンを押すと2番目のページに移動します(希望の動作)が、2番目のページでGOボタンを押すと、フォームを送信しているように見えます。キーボードを閉じるか3ページに進む

2ページのJSフィドルからiphoneでこれを試してみると、CSRFの検証に失敗しました。アイデアはありますか?

jqueryの検証にdebug:trueを追加すると動作します。私の理解はデバッグです:trueはフォームの送信を防ぎます。どのようにこれを正しく行うのですか?

+0

を行うようです。はい、 'debug:true'はjQuery Validateをデバッグモードに入れ、送信を防ぎます...どうすれば適切に処理されますか? – Sparky

+0

'.validate()'メソッドはクリックハンドラの中にあってはいけません。このメソッドは、フォーム上のプラグインを初期化するためにのみ使用され、DOMの準備ができたら一度呼び出されます。 – Sparky

+0

*「私はCSRF検証に失敗しました」*〜あなたが私たちに示したJavaScriptから来ていないため、サーバー側のコードから来るエラーのように聞こえます。 – Sparky

答えて

0
<form onsubmit="return false"> 

jQueryの検証についての最後の部分は、問題の残りの部分とは何の関係もありませんトリック

関連する問題