Mederがすぐに答えたので面白くなかった私の前の質問に続いて、再利用可能なjQueryフォームを送信する過程でポップアップする追加の質問があり、ユーザーを元の場所から遠ざけることはありません。 。
問題
jQueryserialize()
関数は、送信された特定のフォームではなく、ページ内のすべてのフォームでその魔法を実行しています。以下のサンプルコード。
"form"
フォームの一意の名前/IDをキャプチャし、その中$("form").serialize()
でターゲットフォームの名前に置き換えて、それだけがシリアル化されるようにするにはどうすればよいですか?
フォームコード
<form name="contact" id="contact" action="">
<input name="_recipients" type="hidden" value="joe@fake.com" />
<input name="_subject" type="hidden" value="Title" />
...
<fieldset>
<label for="name" id="name_label">Name</label>
<input type="text" name="name" id="name" size="30" value="" class="text-input" />
<label class="error" for="name" id="name_error">This field is required.</label><br />
<label for="email" id="email_label">Return Email</label>
<input type="text" name="email" id="email" size="30" value="" class="text-input" />
<label class="error" for="email" id="email_error">This field is required.</label><br />
<label for="phone" id="phone_label">Return Phone</label>
<input type="text" name="phone" id="phone" size="30" value="" class="text-input" />
<label class="error" for="phone" id="phone_error">This field is required.</label><br/>
<br />
<input type="submit" name="submit" class="button" id="submit_btn" value="Send your suggestion" />
</fieldset>
</form>
jQueryのシリアル化と投稿
var dataString = $("form").serialize();
//alert (dataString);return false;
$.ajax({
type: "POST",
url: "/_global/assets/scripts/formmail/formmail.asp",
data: dataString,
...