隨筆 - 55  文章 - 187  trackbacks - 0
          <2010年4月>
          28293031123
          45678910
          11121314151617
          18192021222324
          2526272829301
          2345678

          常用鏈接

          留言簿(12)

          隨筆分類

          隨筆檔案

          groovy

          搜索

          •  

          最新評論

          閱讀排行榜

          評論排行榜

          使用這個組合,感覺還是很方便靈活的。

          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、helloworld.jsp
                     <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')
                          }
          ;
                          jQuery.post(url, params, callbackFun, 'json');
                      }

                      
          function callbackFun(data)
                      
          {
                          alert(data.result);//對應HelloWorld類的message屬性
                              //獲取數據后渲染頁面
                      }

                  
          </SCRIPT>



                 
          <input id="name" type="text">
                  
          <input type="button" value="ok" onclick="javascript:clickButton();">

          4、HelloWorld.java
          package org.david.struts2;

          public class HelloWorld {

              
          private String name;
              
          private String result;

              
          // ajax請求參數賦值
              public void setName(String name) {
                  
          this.name = name;
              }


              
          // ajax返回結果
              public String getResult() {
                  
          return result;
              }


              
          public String execute() {
                  
          this.result = "Hello! " + this.name + ".";
                  
          return "success";
              }


          }
          posted on 2008-09-07 23:07 大衛(wèi) 閱讀(41963) 評論(17)  編輯  收藏 所屬分類: JavaJavaScriptweb

          FeedBack:
          # re: Struts2 + jQuery 實現ajax 2009-04-11 10:37 starnc
          jQuery.post(url, params, callbackFun, 'json');
          關于這條語句,我查jquery的api,只有三個參數啊,沒有‘json’,這個參數,請解釋一下,謝謝  回復  更多評論
            
          # re: Struts2 + jQuery 實現ajax 2009-08-31 21:49 ss
          是反回值  回復  更多評論
            
          # re: Struts2 + jQuery 實現ajax[未登錄] 2009-10-30 13:48 123
          老大。你的struts2標簽呢.  回復  更多評論
            
          # re: Struts2 + jQuery 實現ajax 2010-01-08 15:13 f
          為什么<package name="ajax" extends="json-default">
          的ACTION找不到啊  回復  更多評論
            
          # re: Struts2 + jQuery 實現ajax 2010-01-11 11:19 jazzCat
          請問,返回值data肯定是個HelloWorld對象么?
          能不能返回自定義的對象呢?  回復  更多評論
            
          # re: Struts2 + jQuery 實現ajax 2010-01-11 11:20 jazzCat
          請問,返回值data肯定是個HelloWorld對象么?
          能不能返回自定義的對象呢?或返回一個List?  回復  更多評論
            
          # re: Struts2 + jQuery 實現ajax 2010-01-14 10:00 #tao
          請問callbackFun(data)中的data 是什么啊,我用你的方法可以進入到action里面,可是后臺出錯了,能否大蝦這點下
          java.lang.NoSuchMethodError: com.opensymphony.xwork2.ActionContext.get(Ljava/lang/Object;)Ljava/lang/Object;
          at com.googlecode.jsonplugin.JSONResult.execute(JSONResult.java:157)
          at com.opensymphony.xwork2.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:362)
          at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:266)
          at com.opensymphony.xwork2.interceptor.DefaultWorkflowInterceptor.doIntercept(DefaultWorkflowInterceptor.java:165)
          at com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:87)
          at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
          at com.opensymphony.xwork2.validator.ValidationInterceptor.doIntercept(ValidationInterceptor.java:252)
          at org.apache.struts2.interceptor.validation.AnnotationValidationInterceptor.doIntercept(AnnotationValidationInterceptor.java:68)
          at com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:87)
          at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
          at com.opensymphony.xwork2.interceptor.ConversionErrorInterceptor.intercept(ConversionErrorInterceptor.java:122)
          at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
          at com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:195)
          at com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:87)
          at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
          at com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:195)
          at com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:87)
          at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
          at com.opensymphony.xwork2.interceptor.StaticParametersInterceptor.intercept(StaticParametersInterceptor.java:179)
          at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
          at org.apache.struts2.interceptor.MultiselectInterceptor.intercept(MultiselectInterceptor.java:75)

            回復  更多評論
            
          # re: Struts2 + jQuery 實現ajax 2010-01-15 14:46 gjhohj
          @#tao
          struts 2.0 用json 0.32
          struts 2.1 用 json 0.33-34  回復  更多評論
            
          # re: Struts2 + jQuery 實現ajax[未登錄] 2010-04-15 14:09 cc
          json在struts2中的配置只用下plugin嗎。jon-lib.jar這個包要不要一起加進去
          還有一個json.js這個要要加
            回復  更多評論
            
          # re: Struts2 + jQuery 實現ajax 2010-08-18 11:23 葉新華
          樓主 說的很清晰. 贊一個  回復  更多評論
            
          # re: Struts2 + jQuery 實現ajax 2011-07-08 13:27 jj
          干凈明了
            回復  更多評論
            
          # re: Struts2 + jQuery 實現ajax 2011-07-25 11:17 guanlin218
          為什么我配置了。一直提示我ajaxRequest.action 這個找不到。  回復  更多評論
            
          # re: Struts2 + jQuery 實現ajax[未登錄] 2012-06-07 18:10 abc
          @starnc
          是不是隨便哪里copy一段來的????  回復  更多評論
            
          # re: Struts2 + jQuery 實現ajax[未登錄] 2012-06-07 18:11 abc
          .....  回復  更多評論
            
          # re: Struts2 + jQuery 實現ajax[未登錄] 2012-06-07 18:11 abc
          @abc
          adsaf  回復  更多評論
            
          # re: Struts2 + jQuery 實現ajax 2012-08-25 11:46 妞妞
          不用struts的標簽也是可以的
            回復  更多評論
            
          # re: Struts2 + jQuery 實現ajax[未登錄] 2016-01-16 20:29 1
          @cc
          1  回復  更多評論
            
          主站蜘蛛池模板: 彭阳县| 长武县| 轮台县| 榕江县| 临潭县| 乌恰县| 江孜县| 夏河县| 乡城县| 理塘县| 嘉兴市| 扎赉特旗| 中超| 渝中区| 如皋市| 财经| 奉化市| 日喀则市| 深圳市| 闻喜县| 当涂县| 蒲江县| 天柱县| 西乌| 辽阳市| 虎林市| 当涂县| 昭平县| 普安县| 芒康县| 南充市| 元阳县| 修文县| 周至县| 安陆市| 宿松县| 徐水县| 湄潭县| 抚顺市| 皮山县| 宜城市|