posts - 0,  comments - 19,  trackbacks - 0
          問題出現(xiàn):
              今天做項目遇到這樣的需求,每個頁面header部分和body部分之間要有3張圖片,中間部分的圖片是靜態(tài)的,而左右兩側需要從數(shù)據(jù)庫動態(tài)查出,即廣告位;
          開始的思路:
              如果單純的是一個頁面還好說,思路是在請求Action時,在相應方法中加入數(shù)據(jù)庫查詢方法,響應后接到list顯示圖片即可;
          難題的出現(xiàn):   
              但現(xiàn)在的情況是,有多個jsp頁面需要接收這個list,也就是說,按原來的思路,首先需要將該部分做成公共jsp頁面,使用<%@ include file="/include/advertising.jsp" %>進行包含使用,其次在所有涉及該廣告顯示的jsp頁面鏈接請求的Action中加入數(shù)據(jù)庫查詢方法;
              想想這個工作量有多大,而且在團隊合作開發(fā)的今天,我在別人完成的代碼的基礎上加入某些代碼,稍不留意就會有遺漏,導致項目出現(xiàn)問題!
          最終的解決方案(最好的)
              怎么辦呢?Ajax!!神奇的Ajax!!對我來說Ajax顯得很陌生,即便做了半年多的web開發(fā),即便Ajax在web開發(fā)中應用很廣泛,到了今天我才真正認識到Ajax的力量!貼代碼吧,見證“我的Ajax”:

          公共頁面advertising.jsp代碼:

          <%@ page contentType="text/html; charset=utf-8" language="java" errorPage="" %>
          <script type="text/javascript">
          //<![CDATA[
          $(function(){
                  var url1 
          = "/getAdAdvertisingAction.do";
                  $.get(url1,function call(data){
                          var array 
          = data.split(",");
                          document.getElementById(
          "left_ad01").src = array[0];
                          document.getElementById(
          "left_ad02").src = array[1];
                  });
              });
          //]]>
          </script>

          <ul id="banner">
              
          <li class="ml_0"><img id="left_ad01" width="173" height="90" src="/images/banner/img01_banner.png" alt="廣告" /></li>
              
          <li><img src="/images/banner/img02_banner.png" alt="廣告" /></li>
              
          <li><img id="left_ad02" width="173" height="90" src="/images/banner/img03_banner.png" alt="廣告"  /></li>
              
          </ul>

          引用頁main.jsp代碼(多個頁面引用,這里以main.jsp為例):

          <%@ page contentType="text/html; charset=utf-8" language="java" errorPage="" %>
          <html>
          <title></title>
          <head></head>
          <body>
          <%@ include file="/include/header.jsp" %>
          <%@ include file="/include/advertising.jsp" %>
          <div></div>
          <%@ include file="/include/footer.jsp" %>
          </boday>
          </html>

          后臺Action.java代碼:

          public void getAd() throws Exception {
                  HttpServletResponse response 
          = ServletActionContext.getResponse();
                  List
          <DragonAdvertising> adList = dragonAdvertisingService.webList(pager, "1""1"1);
                  List
          <DragonAdvertising> adList1 = dragonAdvertisingService.webList(pager, "1""2"1);
                  response.getWriter().write(
          "/"+adList.get(0).getAD_FILE_PATH()+","+"/"+adList1.get(0).getAD_FILE_PATH());
                  response.getWriter().close();
              }

            就是這樣,所有想似復雜和看似復雜的問題就這樣解決了;
            當然,Ajax的應用遠沒有這樣簡單,還有很多復雜的方法和原理我還沒有見過,慢慢學習吧!
          posted on 2012-03-23 14:13 canry Tong 閱讀(2109) 評論(1)  編輯  收藏 所屬分類: Ajax簡單應用

          FeedBack:
          # re: $.get(url,function call(data){});
          2013-07-09 17:16 | sadf
          dfsasdf  回復  更多評論
            

          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導航:
           
          <2025年6月>
          25262728293031
          1234567
          891011121314
          15161718192021
          22232425262728
          293012345

          留言簿

          文章分類

          文章檔案

          搜索

          •  

          最新評論

          主站蜘蛛池模板: 沾化县| 都安| 化隆| 崇文区| 八宿县| 大丰市| 丰原市| 二连浩特市| 孟连| 平谷区| 锦州市| 同江市| 英超| 额尔古纳市| 分宜县| 太康县| 武汉市| 永吉县| 萨迦县| 宜黄县| 阳泉市| 广丰县| 柏乡县| 武胜县| 长兴县| 宽甸| 当涂县| 札达县| 左云县| 西平县| 商南县| 林口县| 井研县| 四子王旗| 兰州市| 万山特区| 方山县| 东阳市| 二连浩特市| 宜都市| 淄博市|