在数据加载Knockoutjs时显示进度条

时间:2013-04-23 05:20:02

标签: jquery-ui knockout.js progress-bar

我需要一些帮助来集成JqueryUI的加载进度条来加载来自Observable KO数组的数据。我创建了一些JsFiddles

fiddle for KnockOut : http://jsfiddle.net/neodescorpio/HksCA/

fiddle for JqueryUI Progress bar : http://jsfiddle.net/neodescorpio/NAs3V/

我需要将这两者结合起来,以便在加载敲除时显示百分比的进度条,并在数据加载100%后消失。如果使用任何其他进度条即可。我只想要展示进展。

1 个答案:

答案 0 :(得分:2)

你应该制作一个自定义绑定来操纵敲除绑定的jQuery进度条。例如类似的东西(非常人为的例子):

ko.bindingHandlers.progress = {
   init: function(element, valueAccessor) {
      $(element).progressbar({
         value: 0
      });
   },
   update: function(element, valueAccessor) {
      var val = ko.utils.unwrapObservable(valueAccessor());
      $(element).progressbar("value", parseFloat(val));
   }
};

现在,您可以通过使用 progress binding - 例如:

<div data-bind="progress: percentComplete"></div>

我更新你的小提琴来展示一个例子:http://jsfiddle.net/HksCA/2/