雪湖小札@blogjava

          心情與技術文檔同行 http://hi.baidu.com/jingleq

          BlogJava 首頁 新隨筆 聯系 聚合 管理
            24 Posts :: 2 Stories :: 4 Comments :: 0 Trackbacks

             今天才發現原來html的基本標簽里面的屬性是可以由我們自己隨意添加的,而且通過DOM方式還能夠訪問到。這一功能可以做很多事情。
            這里我做的就是數據分離,這是用好ajax的前提條件。實現中,通過在span標簽中添加上bindingData屬性和bindingPattern屬性來指明數據和數據轉化邏輯。通過javascript處理填入數據內容。
            當然要處理javascript代碼,使用了jquery,jquery在操作DOM對象的時候帶來很大的便利。另外jquery在ajax與數據展示特效中都有出色的表現。后面會再有詳細說明。
            整個程序如下:

          <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//ZH-CN" "http://www.w3.org/TR/html4/strict.dtd">
          <html>
          <head>
             
          <title>HelloWorld</title>
             
          <script src="lib/jquery/jquery.js" type="text/javascript" charset="utf-8"></script>
             
          <script type="text/javascript" charset="utf-8">
            
             
          // --- 基本數據區 ---
             var dataMap = {"name":"0001","password":"123456"};
             
          var userMap = {"0001":"jingle","0002":"chen"}
             
          // --- end ---  

             
          // --- 基本數據格式轉換邏輯區 --- 
             function changeName(val) {
              
          return userMap[val];
             }

             
          // --- end ---
            
             
          // --- 數據綁定 ---
             $(document).ready(function (){
              $(
          "span").each(function (i,n) {
               
          if (n.bindingPattern != undefined || n.bindingPattern == ""{
                
          try {
                 n.bindingPattern 
          = n.bindingPattern.replace("[function]","");
                 
          // --- 調用處理方法 ---
                 //當然可以在這里加強,不止只有一個參數
                 n.innerHTML = eval(n.bindingPattern.replace("\{0\}","'" + dataMap[n.bindingData] + "'"));
                }
           catch (e) {
                 alert(e);
                }

               }
           else {
                n.innerHTML 
          = dataMap[n.bindingData];
               }

              }
          )
             }
          )
             
          // --- end ---

             
          </script>
          </head>
          <body>
             
          <div id="head">HelloWOrld</div>
             
          <hr/>
             
          <div id="conent"> 
              
          <!-- 這樣寫在html區域代碼清晰明了 -->
              
          <table border="0" cellspacing="5" cellpadding="5">
               
          <tr>
                    
          <td><span bindingData="name" bindingPattern="[function] changeName({0})"></span></td>
               
          </tr>
               
          <tr>
                    
          <td><span bindingData="password"></span></td>
               
          </tr>
              
          </table>
             
          </div>
          </body>
          </html>

           

           

           

          posted on 2007-06-13 08:17 csnowfox 閱讀(502) 評論(0)  編輯  收藏

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


          網站導航:
           
          主站蜘蛛池模板: 澄城县| 平利县| 河东区| 临漳县| 罗定市| 高尔夫| 临猗县| 建宁县| 金坛市| 石河子市| 马龙县| 右玉县| 滦南县| 彰化市| 色达县| 璧山县| 高安市| 浙江省| 八宿县| 屏南县| 盐池县| 靖安县| 改则县| 邳州市| 中方县| 顺义区| 宝山区| 广安市| 宾川县| 凌云县| 平利县| 稷山县| 孟州市| 禄丰县| 洛隆县| 德钦县| 海口市| 阳东县| 盐边县| 郓城县| 高安市|