<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    雪湖小札@blogjava

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

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

      javascript的應用,必然導致大量的javascript代碼出現在最終的html頁面上,帶來混亂的邏輯。一個框架性模式在javascript開發中的重要性漸漸浮現。
      我們在使用ajax開發中,常常做這樣一件事情:在一個標簽容器中加載一些特定內容。這些內容是什么呢?無非只有兩種東西:數據與頁面樣式。
      jquery.jq.mvc處理的就是這種情況。在應用jquery.jq.mvc框架之后,我們做到了把數據顯示樣式與數據本身分離開來。做業務的去關心數據去吧,做頁面的關心數據顯示去把,大家共同關心的就是xml定義出的數據了。
      一個完整的應用中包括三部份的內容:工作頁面,xml數據文件和標簽容器中顯示的內容頁面。
      Jquery.jq.mvc插件下載/Files/csnowfox/jquery.jq.mvc.rar
      jquery.jq.mvc插件演示下載/Files/csnowfox/jquery.jq.mvc.example.rar
      下面展示如何通過jquery.jq.mvc來工作。在這里,我們使用到了上一章節中定義的jquery.jq.databinding插件。加入以下文件便能看到效果。

      工作頁面(首頁面,在其中整合配置xml數據文件與標簽容器中顯示的內容頁面,xml文件我們使用了靜態文件來方便舉例)-- jq.form.htm

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//ZH-CN" "http://www.w3.org/TR/html4/strict.dtd">
    <html>
        
    <head>
            
    <title>HelloWorld</title>
            
            
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
            
    <script src="lib/jquery/jquery.jq.js" type="text/javascript"></script>
            
    <script src="lib/jquery/jquery.block.js" type="text/javascript"></script>
            
    <script src="lib/jquery/jquery.jq.mvc.js" type="text/javascript"></script>
            
    <script src="lib/jquery/jquery.jq.form.js" type="text/javascript"></script>
            
    <script src="lib/jquery/jquery.jq.databinding.js" type="text/javascript"></script>
            
    <script type="text/javascript">
            
            
    <!-- 數據處理邏輯 -->
            
    var userMap = {"0001":"","0002":"","0003":"保密"}
            
    function changeName(val) {
                
    return userMap[val];
            }

            
            $(
    function (){
                
                $.blockUI($(
    "#domMessage"));
                $(
    "#ajForm").formController("#content","index.htm",
                    
    function(dataMap) {
                        
    //--- 定義數據綁定 ---    
                        $("#ta").bindingItemsData(dataMap,function(l,it){                    
                            $(it).hover(
    function(){
                                $(it).addClass(
    "blue");
                            }
    ,function(){
                                $(it).removeClass(
    "blue");
                            }
    )
                        }
    );
                        $.unblockUI();
                    }
    ,
                    
    function(formArray, jqForm) {
                        $.unblockUI();
                        $.blockUI(
    "Just a moment");
                    }
    ,
                    
    function(){
                        alert(
    "error");
                        $.unblockUI();
                    }

                );
                
                $(
    "#cansel").click(function () {
                    $.unblockUI();
                }
    );
            }
    )    
            
    </script>
            
    <style type="text/css" media="screen">
                .blue 
    { color: blue; }
            
    </style>
        
    </head>
        
    <body>
            
    <div id="head">
                
    <h1>Jquery-JingleQ</h1>
            
    </div>
            
    <hr/>
            
    <div id="content">div容器</div>
            
    <div id="domMessage" style="display:none;"> 
                
    <h1>請登陸</h1>
                
    <form name="ajForm" action="index.xml" method="post">
                    
    <p>name:<input type="text" name="name"/></p>
                    
    <p>password:<input type="password" name="password"/></p>
                    
    <p><input type="submit" value="submit"/><input id="cansel" type="button" value="cansel"/></p>
                
    </form>
            
    </div>
        
    </body>
    </html>

      xml數據文件(可以通過程序生成)--index.xml
    <?xml version="1.0" encoding="utf-8"?>
    <datas>
        
    <item>
            
    <property name="name">李四</property>
            
    <property name="sex">0001</property>
            
    <property name="number">123456</property>
        
    </item>
        
    <item>
            
    <property name="name">張三</property>
            
    <property name="sex">0003</property>
            
    <property name="number">654321</property>
        
    </item>
        
    <item>
            
    <property name="name">王二</property>
            
    <property name="sex">0002</property>
            
    <property name="number">654321</property>
        
    </item>
    </datas>

      標簽容器中顯示的內容頁面(也是一個htm頁面)--index.htm
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//ZH-CN" "http://www.w3.org/TR/html4/strict.dtd">
    <html>
        
    <head>
            
    <title>HelloWorld</title>
            
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        
    </head>
        
    <body>
            
    <div id="conent" style="{font-size: 12pt}">
                
    <table border="0" cellspacing="5" cellpadding="5" id="ta">
                    
    <tbody>
                    
    <!-- 定制menu是為了使標題和下面的列表可以有不一樣的樣式布局 -->
                    
    <tr id="menu">
                        
    <td>用戶名</td>
                        
    <td>姓名</td>
                        
    <td>員工號</td>
                    
    </tr>
                    
    <!-- 用于數據綁定 -->
                    
    <tr id="def">
                        
    <td bindingData="name"></td>
                        
    <td bindingData="sex" bindingPattern="[function] changeName({0})"></td>
                        
    <td bindingData="number"></td>
                    
    </tr>
                    
    <!-- 下面是其它的布局輔助綁定數據后依然位于表格底部 -->
                    
    <tr>
                        
    <td colspan="2">&nbsp;--- 分頁 ---</td>
                    
    </tr>
                    
    </tbody>
                
    </table>
            
    </div>
        
    </body>
    </html>
    posted on 2007-06-15 15:03 csnowfox 閱讀(1127) 評論(1)  編輯  收藏

    Feedback

    # re: 征服javascript(七)-Jquery插件jquery.jq.mvc發布 2007-06-26 18:20 NetFetch
    玩jQuery有一段時間,看起來你這是一個有意思的東西  回復  更多評論
      


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


    網站導航:
     
    主站蜘蛛池模板: 久久亚洲AV成人无码软件| 亚洲av无码不卡久久| 亚洲AV第一页国产精品| 一级特黄a大片免费| 四虎影视永久免费观看| 理论亚洲区美一区二区三区| 国产精品无码免费专区午夜| 亚洲国产午夜福利在线播放| 特a级免费高清黄色片| 亚洲毛片av日韩av无码| 亚洲精品视频免费观看| 亚洲欧洲日产国码av系列天堂| 亚洲精品乱码久久久久久V | 亚洲精品国产首次亮相| 男女交性永久免费视频播放| 亚洲av永久无码天堂网| 亚洲国产精品人人做人人爽| 国产精品免费久久| 色婷婷亚洲十月十月色天| 一二三四在线播放免费观看中文版视频| 亚洲国产精品成人综合久久久 | 亚洲国产小视频精品久久久三级| 又硬又粗又长又爽免费看 | 国产精品亚洲精品青青青| 野花香高清在线观看视频播放免费 | 一级毛片免费不卡| 亚洲AV成人一区二区三区AV| 日本三级2019在线观看免费| 国产亚洲3p无码一区二区| 亚洲av无码一区二区三区四区| 又爽又黄无遮挡高清免费视频| 亚洲AV无码成人专区| 国产一区在线观看免费| 岛国精品一区免费视频在线观看| 91亚洲国产成人精品下载| 午夜视频免费成人| 免费一级毛片在线播放视频| 国产AV旡码专区亚洲AV苍井空| 亚洲一区二区三区在线播放 | 亚洲国产精品无码久久| 亚洲熟妇av一区二区三区|