隨筆-204  評(píng)論-149  文章-0  trackbacks-0
          Struts2 + jQuery 實(shí)現(xiàn)完成請求,不做頁面跳轉(zhuǎn)的ajax效果

          需求要求實(shí)現(xiàn)用彈出層發(fā)送郵件。提交后層關(guān)閉,程序再服務(wù)器端響應(yīng)。

           

          JSON插件提供了一種名為json的ResultType,一旦為某個(gè)Action指定了一個(gè)類型為json的Result,則該Result無需映射到任何視圖資源。因?yàn)镴SON插件會(huì)負(fù)責(zé)將Action里的狀態(tài)信息序列化成JSON格式的數(shù)據(jù),并將該數(shù)據(jù)返回給客戶端頁面的JavaScript 。

           

          簡單地說,JSON插件允許我們在JavaScript中異步調(diào)用Action,而且Action不再需要使用視圖資源來顯示該Action里的狀態(tài)信息,而是由JSON插件負(fù)責(zé)將Action里的狀態(tài)信息返回給調(diào)用頁面——通過這種方式,就可以完成Ajax交互。

          1、將struts2的json插件加入web工程的lib,jsonplugin的下載地址:http://code.google.com/p/jsonplugin/downloads/list

          2、struts.xml添加專為ajax使用的package 

           <package name="ajax" extends="json-default">
                  
          <action name="ajaxRequest"  class="org.david.struts2.HelloWorld">
                      
          <result type="json"></result>
                  
          </action>
          </package>        
                       
          3、在頁面中引入 jquery的js文件庫       

              <SCRIPT type="text/javascript" src="js/jquery-1.2.6.min.js"></script>
           
          <SCRIPT type="text/javascript">
                      
          function clickButton()
                      
          {    
                          
          var url = 'ajaxRequest.action';
                          
          var params = {
                                  name:$('#name').attr('value'),
                                     contactEmail:$('#contactEmail').attr('value'),
                                     subject:$('#subject').attr('value'),
                                     content:$('#content').attr('value')                

                                 }; //通過id獲得輸入值
                           jQuery.post(url, params, callbackFun, 'json');

                

                         } //url:響應(yīng)aciton;params:傳入?yún)?shù);callbackFun:響應(yīng)完成后的回調(diào)函數(shù);
                      

                         function callbackFun(data)
                      
          {
                           alert("SUCCESS");
                          }

               
          </SCRIPT>

          4、action邏輯與普通的ation寫法無大區(qū)別。

               JSON將Action里的狀態(tài)信息序列化成JSON格式的數(shù)據(jù)

          posted on 2009-04-29 09:13 Frank_Fang 閱讀(2874) 評(píng)論(2)  編輯  收藏 所屬分類: SSH+JQuery+DWR

          評(píng)論:
          # re: Struts2 + jQuery 的簡單例子使用 2013-05-25 10:43 | CSDCS
          CSCSDCSD  回復(fù)  更多評(píng)論
            
          # re: Struts2 + jQuery 的簡單例子使用 2013-05-25 10:45 | CSDCS
          能問下 如何把a(bǔ)ction里的狀態(tài)信息序列化成JSON格式的數(shù)據(jù)嗎? action中具體的寫法怎么寫呢?。。  回復(fù)  更多評(píng)論
            
          主站蜘蛛池模板: 龙口市| 新乡市| 石台县| 大悟县| 泰宁县| 临海市| 攀枝花市| 邵东县| 比如县| 巴楚县| 黑水县| 连南| 噶尔县| 定安县| 乐清市| 浑源县| 体育| 古蔺县| 泗洪县| 嘉峪关市| 泾川县| 延津县| 中宁县| 开鲁县| 丹阳市| 蒙山县| 涞水县| 宜都市| 云林县| 青浦区| 博爱县| 太白县| 苏尼特左旗| 康定县| 故城县| 绥中县| 平武县| 湖北省| 白朗县| 永昌县| 绵竹市|