0

したがって、次のコードを使用して「ログイン」フォームを操作し、action="" の URL に送信し、応答されたデータが target="" で指定された ID に送信されるようにします。サブミット方法はmethod=""で指定

私はこれが好き。それはきちんとしています。しかし、毎回フォームごとにこのコードを書き直さなくても、すべてのフォームが Jquery を介して送信されることを意味するスクリプトを持つ方法があるかどうか疑問に思っていました。それはただ面倒です。

とても有難い!

<script type="text/javascript">
$(document).ready(function(){

    $("#login").submit(function(){
         var thistarget = this.target;
         $(thistarget).html('Submitting...');   
         jQuery.ajax({
             data: $(this).serialize(),
             url: this.action,
             type: this.method,
             error: function() {
                 $(thistarget).html("Form failed to submit");
             },
             success: function(results) {
                 $(thistarget).html(results);
             }
         })
         return false;
         }
    );
});

</script>
4

2 に答える 2

3

もちろん、 に置き換えるだけ"#login"です"form"。その後、ページに現在存在するすべてのフォームに影響します (ただし、将来のフォームには影響しません)。

$("#login").submit(function(){...

将来のフォームと現在のフォームの場合、イベント委任が必要になります。

$(document).on("submit","form",function(){...
于 2013-01-07T22:29:30.307 に答える
0

私があなたなら、Jquery の $.post メソッドを使用します。http://api.jquery.com/jQuery.post/ しかし、あなたの質問に答えて、Kevin B が言ったように: #login by formを変更してください

于 2013-01-07T22:31:46.277 に答える