使用validate插件时使用jquery显示和隐藏div

时间:2013-05-02 01:59:57

标签: jquery jquery-validate

我在尝试获取fadeIn / Out方法和表单提交在同一脚本中时遇到问题。

经常发生的事情是,一个人会工作,而另一个人不会。我已经为此工作了大约6个小时,我确信有一些逻辑,我不幸忽略了。

非常感谢对此应如何编写的解释或细分!

HTML

<form id="form" action="#">
                        <div class="formmesage"><p>Hi, I'm </p></div>
                            <div class="nameinput">
                                <input id="name" class="required" type="text" name="name" placeholder="name" tabindex="1"> 
                            </div>
                        <div class="formmesage"><p>and I'm a </p></div>
                            <div class="selection">
                                <select id="profession" name="profession" tabindex="2">
                                    <option type="text" value="designer">designer</option>
                                    <option value="developer">developer</option>
                                    <option value="designer &amp; developer">designer &amp; developer</option>
                                </select>
                            </div>
                        <div class="formmesage"><p>looking to meet other </p></div>
                            <div class="selection">
                                <select id="pairprofession" name="pairprofession" tabindex="3">
                                    <option type="text" value="designer">designers</option>
                                    <option value="developer">developers</option>
                                    <option value="designer &amp; developer">designer &amp; developers</option>
                                </select>
                            </div>
                        <div class="formmesage "><p>in</p></div>
                            <div class="selection">
                                <select id="location" name="location" tabindex="4">
                                    <option type="text" value="New York" p>New York</option>
                                    <option value="Boston">Boston</option>
                                    <option value="Chicago">Chicago</option>
                                </select>
                            </div>
                        <div class="btn">
                            <input id="email" class="required email" type="text" name="email" placeholder="email@address.com" tabindex="5">
                            <button type="submit">submit</button>
                        </div>
                    </form><!-- form -->

JQUERY

$(document).ready(function(){
 $("#form").validate();
  $("#form").submit(function(){
   $("button").click(function(){
    $("#form").delay(500).fadeOut("slow");
     $(".message").delay(1000).fadeIn("slow");
     return false;
     })         
   })
})

1 个答案:

答案 0 :(得分:4)

我认为应该像这样写

$(document).ready(function(){
    $("#form").validate({
        submitHandler : function(){
            $("#form").delay(500).fadeOut("slow", function(){
                $(".message").fadeIn("slow");
            });
            return false;
        }
    });
});

验证是否正在进行提交,您是否需要提交绑定。如果要在提交后修改操作,可以选择验证:submitHandler。然后在延迟500ms后,淡出开始。当淡出结束时,fadein开始。