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

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

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

    七段

    無論怎樣,請(qǐng)讓我先感謝一下國家。

    BlogJava 首頁 新隨筆 聯(lián)系 聚合 管理
      35 Posts :: 2 Stories :: 7 Comments :: 0 Trackbacks
    傳統(tǒng)的client side js MVC 結(jié)構(gòu):
    Model:
    json object - mapping with PO from server side
    View:
    HTML + CSS
    Controller:
    Page object - 負(fù)責(zé)頁面初始化邏輯(驗(yàn)證、事件綁定、json數(shù)據(jù)渲染到DOM),提交時(shí),獲取DOM的數(shù)據(jù)組裝json。

    Concrete Javascript Pattern :
    把status 和 behavior 直接綁定到DOM element上。

    jquery concrete framework:
    http://github.com/hafriedlander/jquery.concrete
    http://github.com/nkallen/effen/
    前者42k,后者0.8k。
    與直接在DOM element object上添加status or behavior相比,框架的好處是可以批量添加。

    用例:
    對(duì)于autocomplete組件,formatted data = data name; saved data= data id;
    之前有一個(gè)實(shí)現(xiàn)是為了save data id,多加了一個(gè) input hidden.
    如果是concrete js pattern, 可以在這個(gè)input element 上直接保存數(shù)據(jù)。
    effen + jquery.autocomplete test:
    $('body').append('<div id="dom_test"><input id="month"/></div>');
                var monthInput = $("#month");
                monthInput.fn({
                    dataPair: function(){
                        if (arguments.length == 0) {
                            return this._data;
                        }
                        else {
                            this._data = arguments[0];
                        }
                    },
                    _data: []
                });
                monthInput.autocomplete(months, {
                    minChars: 0,
                    max: 12,
                    autoFill: true,
                    mustMatch: true,
                    matchContains: false,
                    scrollHeight: 220,
                    formatItem: function(data, i, total){
                        if (data[0] == months[new Date().getMonth()]) 
                            return false;
                        return data[0].substring(0, 3);
                    },
                    formatResult: function(row){
                        return row[1];
                    }
                });
                monthInput.result(function(event, data, formatted){
                    var _data = data[0].split("|");
                    monthInput.fn("dataPair", _data);
                    console.dir(monthInput.fn("dataPair"));
                });
    



    已有 0 人發(fā)表留言,猛擊->>這里<<-參與討論


    JavaEye推薦




    文章來源:http://sevenduan.javaeye.com/blog/503946
    posted on 2009-10-31 14:49 sevenduan 閱讀(129) 評(píng)論(0)  編輯  收藏

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


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 自怕偷自怕亚洲精品| 国产AV无码专区亚洲AV毛网站| 亚洲中文字幕久在线| 污污网站免费观看| 边摸边吃奶边做爽免费视频网站| 国产91免费视频| 亚洲另类精品xxxx人妖| 波多野结衣免费在线观看| 亚洲国产理论片在线播放| 一二三四影视在线看片免费 | 456亚洲人成在线播放网站| 亚洲精品GV天堂无码男同| 全免费一级毛片在线播放| 国产亚洲婷婷香蕉久久精品| 久久精品电影免费动漫| 2022年亚洲午夜一区二区福利 | 亚洲午夜无码AV毛片久久| 国产激情久久久久影院老熟女免费 | 国产精品成人免费视频网站京东| 亚洲男人天堂2020| 久久国产免费直播| 老司机亚洲精品影院无码 | 日本一道本不卡免费| 亚洲精品亚洲人成在线观看麻豆 | 成人免费网站久久久| 亚洲中文字幕无码一区二区三区| 亚洲av专区无码观看精品天堂| 成人免费视频小说| 日韩在线观看免费| 五月天网站亚洲小说| 好男人看视频免费2019中文| 一级毛片高清免费播放| 超pen个人视频国产免费观看| 国产成人1024精品免费| 亚洲毛片基地日韩毛片基地| 免费看片免费播放| 毛片免费在线观看| 亚洲国产精品久久久天堂| 99久久国产热无码精品免费| 日韩在线一区二区三区免费视频| 99久久精品国产亚洲|