找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

帖子
查看: 8601|回復: 0
打印 上一主題 下一主題
收起左側(cè)

Knockout與EasyUI實現(xiàn)雙向綁定

[復制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:108531 發(fā)表于 2016-3-12 21:12 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
    序:

    前端MVVM框架Knockout可以實現(xiàn)數(shù)據(jù)雙向綁定的強大功能,如果不能與EasyUI結(jié)合使用,實在是太可惜�?戳薻nockout-easyui-LITE-master.zip源碼后記錄一下。

    思路:

    在EasyUI控件的onCheck方法中綁定數(shù)據(jù)。

    源碼:

    ko.bindingHandlers.eudatetimebox = {

            init: function (element, valueAccessor, allBindingsAccessor, viewModel) {
                var options = $(element)["combo"]('options');
                var value = valueAccessor();
                if (!value()) {
                    var curValue = $(element)["datetimebox"]('getValue');
                    if (curValue) {
                        value(curValue);
                    }
                }
                var refreshValueFun = function (oriFun) {
                    return function () {
                        value($(element)["datetimebox"]('getValue'));
                    };
                };
                options.onChange = refreshValueFun(options.onChange);
            },

            update: function (element, valueAccessor, allBindingsAccessor, viewModel) {
                var value = ko.utils.unwrapObservable(valueAccessor());
                if ($(element)["datetimebox"]('getValue') !== value) {
                    $(element)["datetimebox"]('setValue', value);
                }
            }
        };

    尾:
   
    其他大部分的EasyUI控件都可以這樣來實現(xiàn)。
     
    原包下載地址: https://github.com/wengys/knockout-easyui-LITE


分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復 返回頂部 返回列表