ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

Javascript-如何在Kendo UI工具栏中动态添加按钮?

2019-11-19 23:38:00  阅读:291  来源: 互联网

标签:angularjs angularjs-directive kendo-ui arrays javascript


Kendo UI工具栏有问题.实际上,每个按钮都在工具栏初始化期间加载.

但是有些要求要求动态添加按钮.

这是我们如何在页面控制器中加载按钮的示例:

...
$scope.toolbarButtons = [{
    type: 'button',
    text: 'Button 1',     
    click: 'clickButton1'
}, {
    type: 'toggleButton',
    text: 'Button 2'
}, {
    type: 'button',
    text: 'Button 3'
}
...

以及我们如何添加工具栏并将按钮传递给指令:

<toolbar buttons="toolbarButtons"></toolbar>

return {
    scope: false,
    restrict: 'E',
    template: '<div kendo-toolbar="toolbar"></div>',
    controller: 'ToolbarController',
    link: function ($scope, element, attr) {

        $scope.buttons = $scope[attr.buttons];

        // Code to manage the toolbar
        ...
    };

我试图更改按钮数组的作用域绑定:

scope: {
    buttons: '='
}

但是,当我在工具栏按钮数组中添加按钮时,该按钮不显示.

解决方法:

Kendo UI工具栏中有一个add方法,用于添加按钮.你应该做:

var toolbar = $("#toolbar").data("kendoToolBar");
toolbar.add ({ type: "button", text: "Button N", id: "buttonN" });

例:

$(document).ready(function() {
  $("#toolbar").kendoToolBar({
    items: [
      {
        type: 'button',
        text: 'Button 1'
      },
      {
        type: 'button',
        text: 'Button 2'
      },
      {
        type: 'button',
        text: 'Button 3'
      }
    ]
  });

  var n = 4;
  $("#add").on("click", function() {
    var toolbar = $("#toolbar").data("kendoToolBar");
    toolbar.add ({ type: "button", text: "Button " + n, id: "button" + n });
    n++;
  });
});
<link rel="stylesheet" href="https://kendo.cdn.telerik.com/2015.2.624/styles/kendo.common.min.css" />
<link rel="stylesheet" href="https://kendo.cdn.telerik.com/2015.2.624/styles/kendo.default.css" />

<script src="https://kendo.cdn.telerik.com/2015.2.624/js/jquery.min.js"></script>
<script src="https://kendo.cdn.telerik.com/2015.2.624/js/kendo.all.min.js"></script>

<button class="k-button" id="add">Add Button</button>
<div id="toolbar"></div>

标签:angularjs,angularjs-directive,kendo-ui,arrays,javascript
来源: https://codeday.me/bug/20191119/2039908.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有