3

http://www.happyholidaylites.com/contact.htmlに非常に基本的なフォームがあり、うまく機能しています。フォームを送信すると、ユーザーはフォームが送信されたというメッセージなしで index.html に移動します。「フォームが送信されました」というアラートを x ボタンで開始しようとしています。私のコードは次のようになります。

      <form method="post" id="myForm" action="dynaform.php">

      <input type='hidden' name='rec_mailto' value='JBIRD1111@gmail.com'>
      <input type='hidden' name='rec_subject' value='New Contact Form'>
      <input type='hidden' name='rec_thanks' value='index.html'>

などなど……。

最後の行は、送信ボタンが押された後に何をすべきかをフォームに伝えているものですが、ブラウザーをインデックスに向けさせたくありません。むしろ、成功メッセージを含む JavaScript ポップアップが必要です。何か案は?

4

4 に答える 4

10

単純なonSubmitを使用しないのはなぜですか?

<form method="post" id="myForm" action="dynaform.php" onSubmit="alert('Thank you for your feedback.');" >
于 2009-09-17T13:00:27.720 に答える
5

正直なところ、ユーザーが更新時にページを再送信しないようにするには、別のページにリダイレクトする方が適切です。Post / Redirect /GetPatternをご覧ください。

ポップアップは、Webサイトで非常に煩わしい場合があります。「thank-you.html」というページを作成して、送信が成功したときにユーザーをリダイレクトして、サイトのナビゲーションオプションにアクセスしたり、数秒後にフォームページにリダイレクトしたりする必要があります。 。

于 2009-09-17T13:02:52.480 に答える
3

index.html にリダイレクトする代わりに、thanks.html にリダイレクトします。誰もがポップアップを嫌うので、あなたのユーザーはあなたに感謝します!

于 2009-09-17T13:22:03.190 に答える
0

PHPスクリプトが入力を処理し、ブラウザをrec_thanksフィールドの値にリダイレクトすることでフォームの送信を処理しているように聞こえます。

onsubmit="YourJavaScriptFunction()"フォームタグにのようなものを追加して、実際にフォームを送信する前にクライアント側の動作を追加できます。その関数内で、検証を実行したり、使用したりすることができますalert('Thank You!')

于 2009-09-17T13:01:06.003 に答える