0

jquery クライアント側の検証を使用する十分な基本的な連絡フォームがあります。私は ajax でフォームを作成することから始めましたが、Google アナリティクス トラッキングを追加するための成功ページが必要なため、サーバー側で送信する方がよいと考えています。したがって、ajaxフォームは次のようになりました。

    if (i == 0) {
    $.ajax({        
        beforeSend: preloader,
        type    : 'POST',
        url     : './ajax/contact-form.php',
        data    : $('#contact_form').serialize(),
        success : function(data) {
            $('#popup_form').html(data);
        }
    });
}

しかし、今私はそれを

if (i == 0) // then go to success.php, else do not submit the form. 

i==0 は明らかに検証エラー数です。では、i が 0 でない場合、フォームの送信を無効にするにはどうすればよいでしょうか?

それが役立つ場合は、ここに私のフォームがあります

<form action="success.php" id="contact_form" method="post">
<input id="contact_name" name="contact_name" placeholder="name*" type="text" /><span id="contact_name_validate"></span>
<input id="contact_company" name="contact_company" placeholder="company" type="text" />
<input id="contact_email" name="contact_email" placeholder="email*" type="text" /><span id="contact_email_validate"></span>
<input id="contact_telephone" name="contact_telephone" placeholder="telephone*" type="text" /><span id="contact_telephone_validate"></span>
<div id="contact_message"><textarea name="contact_message" placeholder="Enter your message..."></textarea></div>
<input id="contact_button" type="submit" value="Enquire Now" />

4

1 に答える 1

2

あなたが探しているものはfalseを返しますか?

if (i == 0) {
    return true; // submits the form if this is a button click / form submit event handler
}

return false; // notice this, stops form from submitting.
于 2013-05-27T22:32:41.913 に答える