0

Web ページにフォームがあり、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() { が、うまくいきません。助けてください!Web サイトの最新の JQuery バージョンを使用しています。 編集- 私も試着しました。同じことが起こります。また、私のフォームには、この同じスクリプトで処理される複数のフォームがあります。私のフォームの 1 つ -

<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 は 1.9 から非推奨になりました。代わりに on を使用してください ;)

これは の正しい構文です。on():

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

.live と .on の違いを理解するための便利なリンクを次に示します:
jQuery 1.7+ .on() vs .live() レビュー

jQuery .live() と .on() の違いは何ですか?

そしてあなたのコードと統合:

$(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 に答える