1

Web2py に、プロファイルからユーザーに電子メールを送信する連絡フォームがあります。通常のページでは問題なく動作しますが、Captcha が私のデザインを台無しにしてしまったので、ポップアップ ウィンドウに入れたいと思いました。

ここで Java ポップアップを使用しました。 http://blog.theonlytutorials.com/a-very-simple-jquery-popup-ready-to-use-code/

これが私の見解です:

<a href="#" id="pop"><img src="/init/static/images/envelope-small.gif" border="0" Title="Send A Message"></a></h1>
         <div id="overlay_form" style="display:none">
             <center> <h3>Send {{=user.company_name}} A Message</h3> </center>
     {{=contact.custom.begin}}
         Your Email:<br>
         {{=contact.custom.widget.your_email}}
         <br>
         Your Message:<br>
        {{=contact.custom.widget.question}}

        {{=captcha}}
         <center> 
         {{=contact.custom.submit}}
         </center>
         <a href="#" id="close" >Close</a>
         {{=contact.custom.end}}
    </div>

ポップアップをクリックすると、フォームが表示され、すべてのフィールドが正しい場合に電子メールが送信されます。ただし、フォームにエラーがある場合は、ポップアップを閉じてフラッシュ ボックスに通知します。

フォームにエラーがある場合は、ポップアップを開いたままにして、修正できるようにしたいと思います。フォームの検証によりリロードが発生するため、ポップアップが閉じますが、それを開いたままにする方法が必要だと思います。

私はこのようにしようとしているのですか?Web2py には常に本当に単純な解決策があるようですが、私はそれを見つけることができないようです。

提案?

4

1 に答える 1

1

フォームの送信でページ全体が再読み込みされるため、ポップアップを開いたままにすることはできません。ただし、フォームがエラーで返された場合は、ページが読み込まれるとすぐにポップアップを自動的に開く Javascript コードをページに追加できます。

もう 1 つのオプションは、Ajax 経由でフォームを送信することです。これにより、ページ全体の再読み込みが回避されます。

于 2013-06-29T05:11:24.713 に答える