2

会社の Web サイトのモバイル バージョンに取り組んでいるときに、BlackBerry 10 ブラウザーに問題があると思います。(Q10、バージョン 10.1.0.4181 を使用しています)

jQuery を使用してフォームの送信イベントにバインドし、AJAX 呼び出しを行っているので、preventDefault がありますが、ブラウザーが提供する SUBMIT ボタンを使用すると、BB10 はこれを無視するようです。

Enterキーを押すか、フォームの送信ボタンを押すと正常に動作しますが、ブラウザの下部にある送信ボタンを押すと(前/次のボタンと一緒に)、preventDefaultを無視します(falseを返します)フォームの送信を続行します。

これを示すjsfiddleをセットアップしました:
http://jsfiddle.net/e4AHZ/4/

バインドに使用しているコードは次のとおりです。

$(function () {
    $(document).on('submit', 'form', function (e) {
        e.preventDefault();
        alert('done!');
        return false; // as final resort, no luck =(
    });
});

この問題を抱えていた他の人はいますか?可能な修正/回避策はありますか?

ありがとう!

4

2 に答える 2

0

action="javascript:void(0);"を追加して、これを回避しました。あなたのフォームに(更新されたフィドルhttp://jsfiddle.net/e4AHZ/11/を参照)。

これで十分かどうかはわかりませんが、action="javascript:void(0);" 実際には、同様の質問に対する解決策の一部です。

<form method="post" action="javascript:void(0);">
    <input type="text" name="field1" value="some msg" />
    <input type="text" name="field2" value="some msg" />
    <input type="submit" />
</form>
于 2013-08-05T14:53:11.857 に答える
0

アクションを「javascript:ajaxfunction();」に設定することもできます。ここで、「ajaxfunction()」は、フォームを送信するために呼び出す関数です。

$('form').attr("action","javascript:ajaxfunction();");

これにより、その送信ボタンを利用できるようになります。

于 2014-03-24T19:16:14.333 に答える