struts2 +jquery +json實現ajax技術

來源:互聯網
上載者:User

第一步:匯入包  將struts2的json外掛程式加入web工程的lib,jsonplugin的:http://code.google.com/p/jsonplugin/downloads/list
第二步:struts.xml添加專為ajax使用的package 

 <package name="ajax" extends="json-default">
        <action name="ajaxRequest"
            class="org.david.struts2.HelloWorld">
            <result type="json"></result>
        </action>
    </package>
說明:json-default已經繼承了struts-default

第三步:用js展示出資料

<SCRIPT type="text/javascript" src="js/jquery-1.4.2.min.js"></script>
 <%@ taglib prefix="s" uri="/struts-tags"%>
        <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)
            {
              var bb = data.listArticles;//對應HelloWorld類的message屬性
              for( i=0;i<bb.length;i++){
               if(bb[i].title.==‘1’){
               alert('已經有了')
               }
              }
                    //擷取資料後渲染頁面
            }
        </SCRIPT>

說明://listArticles是返回來的list類型,也就是和數群組類型一樣的,這裡的.length返回的數組的對象,

bb[i].title.==‘1‘返回的對象的標題,

第四步:Action中的代碼

private String name;

private List<Article> listArticles;

get set方法

@Override
 public String execute() throws Exception {
   listArticles = this.articleService.findAllArticle();
  return SUCCESS;
 }

說明:articleService不能有get方法(spring依賴注入的),只能有set方法。

第五步:jsp中的代碼

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

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.