• kendo ui 实现MVVM


    MVVM                    model----view model----model 实现页面和model之间的动态绑定

    grid 支持 events  source  visible绑定

    第一步建立一个observable对象   对象为参数

           var viewModel = kendo.observable()

    第二步实现视图与 viewModel绑定

     kendo.bind($("#example"), viewModel);  //jQuery对象

    注意对某一属性设置值时使用

    this.set("isDescriptionShown", true);
         showDescription: function(e) {
           e.stopPropagation(); 
        e.preventDefault();
            this.set("isDescriptionShown", true);  //给属性赋值
    }

    
    
    <!DOCTYPE html>
    <html>
    <head>
        <title></title>
        <link rel="stylesheet" href="styles/kendo.common.min.css" />
        <link rel="stylesheet" href="styles/kendo.default.min.css" />
        <link rel="stylesheet" href="styles/kendo.default.mobile.min.css" />
    
        <script src="js/jquery.min.js"></script>
        <script src="js/kendo.all.min.js"></script>
        
    
    </head>
    <body>
    <div id="example">
        <div class="demo-section k-content wide">
            <div>
                <h4>Add or update a record</h4>
                <div data-role="grid"
                     data-editable="true"
                     data-toolbar="['create', 'save']"
                     data-columns="[
                                     { 'field': 'ProductName', 'width': 270 },
                                     { 'field': 'UnitPrice' },
                                  ]"
                     data-bind="source: products,   //绑定的属性     
                                visible: isVisible,   //显示隐藏
                                events: {
                                  save: onSave
                                }"
                     style="height: 200px"></div>
            </div>
            <div style="padding-top: 1em;">
                <h4>Console</h4>
                <div class="console"></div>
            </div>
        </div>
        <div class="box wide">
            <div class="box-col">
                <h4>Configuration</h4>
                <div>
                    <label><input type="checkbox" data-bind="checked: isVisible">Visible</label>  //绑定的属性
                </div>
            </div>
            <div class="box-col">
                <h4>Information</h4>
                Kendo UI Grid supports the
                <a href="http://docs.telerik.com/kendo-ui/getting-started/framework/mvvm/bindings/events">events</a>,
                <a href="http://docs.telerik.com/kendo-ui/getting-started/framework/mvvm/bindings/source">source</a> and
                <a href="http://docs.telerik.com/kendo-ui/getting-started/framework/mvvm/bindings/visible">visible</a> bindings.
            </div>
        </div>
    <script>
        var viewModel = kendo.observable({ //观察者 检测属性的变化
            isVisible: true,
            onSave: function(e) {
                kendoConsole.log("event :: save(" + kendo.stringify(e.values, null, 4) + ")");
            },
            products: new kendo.data.DataSource({
                schema: {  //图表
                    model: {
                        id: "ProductID",
                        fields: {
                            ProductName: { type: "string" },
                            UnitPrice: { type: "number" }
                        }
                    }
                },
                batch: true,  //批量的
                transport: {
                    read: {
                        url: "https://demos.telerik.com/kendo-ui/service/products",
                        dataType: "jsonp"
                    },
                    update: {
                        url: "https://demos.telerik.com/kendo-ui/service/products/update",
                        dataType: "jsonp"
                    },
                    create: {
                        url: "https://demos.telerik.com/kendo-ui/service/products/create",
                        dataType: "jsonp"
                    },
                    parameterMap: function(options, operation) {
                        if (operation !== "read" && options.models) {
                            return {models: kendo.stringify(options.models)};
                        }
                    }
                }
            })
        });
        kendo.bind($("#example"), viewModel);  //实现  视图和 viewModel的绑定
    </script>
    </div>
    
    
    </body>
    </html>
  • 相关阅读:
    单目标遗传算法 精英保留策略
    单目标优化问题 常用的 测试函数(MATLAB版)
    单目标优化问题 常用的 测试函数
    叼丝装备之服装必备----111111111111111111111111111111111
    算法优化之车牌识别---车牌识别优化项
    医疗器械与图像处理行业简介
    图像处理之增强---高斯模糊
    图像增强之拉普拉斯锐化---高斯一阶导二阶导数
    图像特效之油画---类似油画效果
    图像出增强之锐化---拉普拉斯锐化
  • 原文地址:https://www.cnblogs.com/baota/p/8983325.html
Copyright © 2020-2023  润新知