2

フォームに異常な問題があります (これはスリム化されたバージョンです):

<script>
    (function($){
        $("form").submit(function(){ 
            alert('Checkout time!'); 
        });
        $("button[name='process_order']").click(function(){ 
            alert('Button Checkout time!'); 
        });
        $("button[name='back']").click(function(){ 
            alert('Back Button'); 
        });
    })(jQuery);
</script>

<form>
    <input type="text" name="moo1" tabindex="1" />
    <input type="text" name="moo2" tabindex="2" />
    <button name="back" tabindex="4">Back</button>
    <button name="process_order" tabindex="3">Process Order</button>
</form>

ボタンは正常に機能しますが、テキストボックスの 1 つにフォーカスがあるときに Enter キーを押すと、「戻るボタン」アクションが起動します...フォームの送信ハンドラーが「チェックアウト」を行うように設定されていても...

4

2 に答える 2

2

おそらく、process_order を次のように変更できます。

<input type="submit" name="process_order" value="Process Order" tabindex="3" />

そして、次のように変更します。

<form id="myForm">

次に、 .submit() ハンドラーをそれにバインドします

$('#myForm').submit(function()
{
    alert('Button checkout time!');
    return false; //we return false so that it doesn't refresh the page
});
于 2012-04-13T02:18:20.120 に答える