1

jQueryを使用してフォームを送信する際に問題が発生しましたsubmit()

name="submit"ページにまたはの名前の要素がありませんname="Submit"。IDについても同じことが言えます。

私のjQueryコードは次のとおりです。

    $(document).ready(function () {

    $(document).on('click', "#appSubmit",function(e){

            e.preventDefault();
            var value = $("#time").val();
            if(value == "--"){
                $( "#err-time" ).dialog( "open" );
            }else{
                alert("1");
                var dummy = $("#appSubmit").val();
                alert(dummy);
                $("#appSubmit").submit();
                alert("2");
            }

    });
});

alert(dummy);正しい値を出力する場合でも、すべてのアラートは正しく機能します。alert("2");プリントアウトするので、壊れることさえありません$("#appSubmit").submit();

私の送信ボタンは

<input type="submit" name="appSubmit" id="appSubmit" value="Apply">

どんな考えでもありがたいです、ありがとう。

編集:

申し訳ありませんが、実際の質問を投稿するのを忘れてしまいました。$("#appSubmit").submit();コードの行にヒットしたときにフォームが送信されません。壊れることもありません。

jQueryサイトでは、彼らが提供する例でイベントが<i+n+p+u+t type="submit">に添付されていますが、イベントをフォームのIDに添付しようとして試しましたが、それでも同じ動作が得られました。何も壊れることなくラインを通過します。

それを機能させる唯一の方法は、基本的なjavascriptsubmit呼び出しを使用する場合ですdocument.applySubmit.submit();

これは問題なく、仕事をします。しかし、私はまだこれを理解したいと思います。

編集2:

最も近いアプローチを試してみます。今までそれが何だったのかわかりませんでした。ありがとうございました。うまくいったら投稿します。

編集3:

この質問は私によって3回投稿されましたか?もしそうなら、ごめんなさい。私は自分の質問を見つけることができなかったに違いありません。質問の提出プロセス全体を一度も行ったことがないと思い、2回目または3回目に適切に投稿しようとしました。

編集:Blazemongerの提案が機能しました。

4

1 に答える 1

10

あなたは.submit()ボタンではなく、あなた.submit()はフォームです。試す:

$("#appSubmit").closest('form').submit();

またはそれ以上:

$(this).closest('form').submit();
于 2012-09-17T15:36:37.420 に答える