4

Web アプリケーションの開発に struts2 を使用しています。を使用したい登録フォームquery ajaxで、フォームが非同期的に送信され、フォーム送信が成功すると、サーバー側の成功メッセージをトーストまたは出入りする要素の形で取得できます。

そのために、私は多くのことを試しましたが、どこかでこのことを達成しましたが、使用していませんが、むしろjquery ajax正常です。javascript and ajax

コードの流れは次のとおりです。

  • Home.jspフォームが含まれているページ。

            <s:form theme="simple" action="registrationForDemo"> <table>
                <tbody>
                    <tr>
                        <td><s:label value="username" /></td>
                        <td><s:textfield name="uName"
                                cssClass="textfield" /></td>
                    </tr>
                    <tr>
                        <td><s:label value="password" /></td>
                        <td><s:password name="password"
                                cssClass="textfield" /></td>
                    </tr>
                    <tr>
                        <td><s:label value="email" /></td>
                        <td><s:textfield name="email"
                                cssClass="textfield" /></td>
                    </tr>
                    <tr>
                        <td><s:label value="contact no." /></td>
                        <td><s:textfield name="contactNo"
                                cssClass="textfield" /></td>
                    </tr>
                    <tr>
                        <td><s:label value="location" /></td>
                        <td><s:textfield name="location"
                                cssClass="textfield" /></td>
                    </tr>
                    <tr>
                        <td><s:label value="category" /></td>
                        <td><s:select list="{'Hospital','Doctor','Clinic','Others'}" name="category"/></td>
                    </tr>
                    <tr>
                        <td></td>
                        <td><s:submit
                                value="Submit" cssClass="button" /></td>
                    </tr>
                </tbody>
            </table>
        </s:form>
    
  • マッピングが定義されているファイル、つまり struts.xml。

struts.xml ファイル

  • データがデータベースに正常に保存されると、出力ページは再び同じページになります。

今ajaxとjqueryを使用して、必要な機能を実現する方法を知りたいです。どこからアクションを渡すか...そしてさらに進む方法は...??

4

3 に答える 3

5

単純な Java スクリプトと AJAX を使用してそれを達成した場合、それは Jquery を使用して行うことと変わらないと思います。Jquery は、開発者の生活を楽しくするための Java スクリプトをライブラリとして構築する Java スクリプトと何ら変わりはありません。

Jqueryポストメソッドを使用してフォームを送信し、登録が成功するとサーバーから次のような文字列を送信できます

$.ajax({
  type: 'POST',
  url: url,
  data: data,
  success: success,
  dataType: dataType
});

より細かく制御するには、Struts2-Jsonプラグインと Jquery Json 機能を使用してサーバーにデータを送信し、サーバーから次のような結果を取得することをお勧めします。

var formInput='val='+val;
   $.getJSON('myaction',formInput,function(data) {
     $.each(data.myData,function(index, value){
       alert(index);
});
});

詳細については、このチュートリアルを参照してください

于 2012-08-27T07:27:36.317 に答える
1

私にとって、解決策はjquery.html()機能でした。作業を完了するために他のhtmlコンテンツを渡したところ。Jquery html

Jqueryも素晴らしくて軽量です。

于 2012-11-26T10:58:19.480 に答える