0

我已经在给定的树视图中绑定了一个进度条。

<script id="progressField" type="text/x-kendo-template">
  #if(CurrentStatus == "Progress")
  {#
     <div class='progressDetails'></div>
  #}
  else if(CurrentStatus == "Error")
  {#
      // Other task
  #}
</script>

并将相同的内容添加到给定的树列表视图中

columns: [ 
    { field: "CurrentStatus", title: "Status", template: $("#progressField").html(), width: "170px" }
],

并在 DataBound 上更新了相同的内容

    function dataBound(e) {

     var tree = this;
     $(".progressDetails").each(function () {
     var row = $(this).closest("tr");
     var model = tree.dataItem(row);

     $(this).kendoProgressBar({

      change: function (e) {
       if (model.CurrentStatus == "Progress") {
           colorCode = "#235400";
       } 

       this.progressWrapper.css({
            "background-color": colorCode,
            "border-color": colorCode
       });

     }
  });

  $(this).data("kendoProgressBar").value(model.Percentage);
  });
};

在加载、排序和过滤树列表时,会显示进度条。但是,当我单击展开箭头时,进度条未显示。

4

1 回答 1

0

最后我们得到了解决方案,问题是 Collapse 和 expand 方法很快就会被触发。

添加了超时,它开始工作..

expand: function(e){
 var scope = e
 setTimeout(function(){
   $scope.expandOrCollapse(scope);
 }, 0)
}        

这是工作的dogo。

http://dojo.telerik.com/OLiFE/18

于 2016-12-13T05:38:21.490 回答