0

我的网页上有一个表单,它使用 JQuery Ajax。现在,当我第一次按提交时,代码被执行并提交数据并出现消息。问题是,如果出现“您不能将字段留空”之类的消息,然后我更正详细信息并按提交,则页面会重新加载,这不应该发生。我的 jQuery -

$(document).ready(function () {
    $('form').submit(function () {
        $('#content').fadeOut(100, function () {
            $(this).html('
                <img src="//mywebsite.com/spinner.gif"/>
                <div style="display:inline;color:#1FAEFF">Loading...</div>
           ').fadeIn(100);
        });
        $.get('submit.server', $(this).serialize(), function (data) {
            $('#content').html(data);
        });
        return false;
    });
}); 

我尝试更换$('form').submit(function(){to$('form').live('submit', function() { 但它不起作用。请帮忙!我正在使用网站上最新的 JQuery 版本。 编辑- 我也试过了。同样的事情也会发生。此外,我的表单有多个表单,由同一个脚本处理。我的一种形式——

<form action="submit.server" method="GET">
    <label for="form" style="color:#1FAEFF;">Change Your EmailAddr :
        <br>
    </label>
    <div style="float:left;margin-top:20px">
        <input type="email" class="forminput" name="gotemail" />
        <br />
        <input type="hidden" value="email" name="data" />
        <button name="submit" value="email" class="action"
            style="width:150px;height:70px">Submit</button>
    </div>
</form>
4

1 回答 1

0

如评论中所述

@soyuka: live has been depreceated since 1.9 use on instead ;)

This is the correct syntax for .on():

$(document).on("submit", "form", function() { });

Here are some useful links to understand the difference between .live and .on:
jQuery 1.7+ .on() vs .live() Review

What's the difference between jQuery .live() and .on()

And intergrated with your code:

$(document).ready(function () {
   $(document).on("submit", "form", function() {
        $('#content').fadeOut(100, function () {
            $(this).html('
                <img src="//mywebsite.com/spinner.gif"/>
                <div style="display:inline;color:#1FAEFF">Loading...</div>
           ').fadeIn(100);
        });
        $.get('submit.server', $(this).serialize(), function (data) {
            $('#content').html(data);
        });
        return false;
    });
});
于 2013-02-13T16:36:35.920 回答