雪湖小札@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)  編輯  收藏

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


          網站導航:
           
          主站蜘蛛池模板: 瓦房店市| 洛扎县| 石首市| 峨眉山市| 黑河市| 延长县| 南郑县| 韩城市| 南宁市| 固始县| 庐江县| 凉城县| 上栗县| SHOW| 南充市| 汤阴县| 多伦县| 榕江县| 延吉市| 栾城县| 红安县| 木里| 瑞安市| 晴隆县| 西宁市| 河西区| 岱山县| 湘阴县| 乐业县| 云阳县| 彭阳县| 和田市| 垣曲县| 河间市| 洪泽县| 开原市| 保德县| 曲水县| 红安县| 新绛县| 昭苏县|