雪湖小札@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 閱讀(511) 評論(0)  編輯  收藏

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


          網站導航:
           
          主站蜘蛛池模板: 万源市| 将乐县| 罗定市| 海城市| 尉犁县| 白沙| 武功县| 二连浩特市| 锡林浩特市| 昭觉县| 徐州市| 凤城市| 宝应县| 云安县| 伊川县| 理塘县| 电白县| 文成县| 金坛市| 萨嘎县| 乐业县| 江源县| 乌什县| 平武县| 辉南县| 兰坪| 延津县| 财经| 桐梓县| 敖汉旗| 阆中市| 康乐县| 通州市| 湖南省| 乌鲁木齐县| 鹤山市| 宁乡县| 邓州市| 渝中区| 资阳市| 道真|