3

servlet2つの異なるJavaScriptコードを組み合わせてhtmlフォームデータをに送信しようとしています。1つは次のとおりです。

<script type="text/javascript">
        $(document).ready(function() {
            $("#form1").validate({
                rules: {
                    name: "required",
                    email: {
                        required: true,
                        email: true
                    },
                    url: {
                        url: true
                    },
                    comment: {
                        required: true
                    }
                },
                messages: {
                    comment: "Please Enter Your Message."
                },
                submitHandler:function(login_form){
                    $(login_form).ajaxSubmit({
                        target: '#msg-box',
                        success: function() {
                            $('#form1').slideUp('slow', function(){
                                $(".show_hide").show();
                            });
                        }
                    });
                }
            });
        });
    </script>

2つ目は(このチュートリアルから得た):

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

         //remove previous class and add new "myinfo" class
        $("#msgbox").removeClass().addClass('myinfo').text('Validating Your Login ').fadeIn(1000);


        this.timer = setTimeout(function () {
            $.ajax({
                url: 'check.jsp',
                data: 'un='+ $('#login_id').val() +'&pw=' + $('#password').val(),
                type: 'post',
                success: function(msg){
                    if(msg != 'ERROR') // Message Sent, check and redirect
                    {               // and direct to the success page

                        $("#msgbox").html('Login Verified, Logging in.....').addClass('myinfo').fadeTo(900,1,
                          function()
                          {
                             //redirect to secure page
                             document.location='login.jsp?user='+msg;
                          });

                    }
                    else
                    {
                        $("#msgbox").fadeTo(200,0.1,function() //start fading the messagebox
                        {
                          //add message and change the class of the box and start fading
                          $(this).html('Sorry, Wrong Combination Of Username And Password.').removeClass().addClass('myerror').fadeTo(900,1);
                        });

                    }
                }

            });
        }, 200);
        return false;
    });     

});

  </script>  

私はJavaScriptやJQueryの忍者ではありません。誰かが、これらをコードに組み合わせるのを手伝ってください。コード
に多くの変更を加える必要があることは確かですがsubmitHandler、成功しませんでした。

PS:jsp-jquery-ajaxフォームの検証と送信に関するより良いアイデアは大歓迎です

4

1 に答える 1

0

あなたの$.ajaxand$().ajaxSubmitは、通常同じオプションを取るため、組み合わせることができます。

$.ajax をリファクタリングして、ajaxSubmit の一部にします。data:$.ajax のb/cを取り除くことができますajaxSubmit がそれを処理します。はsuccess: function()同じものです。

$ .ajaxのものsetTimeout()と同じですremoveClass()beforeSubmit:beforeSend:

于 2013-03-18T15:42:09.043 に答える