2015-05-27 42 views
0

Hej,我在這裏有一個問題,knockout-kendo框架。
每個事件都會被觸發兩次。

有人能告訴我我的代碼有什麼問題嗎?淘汰賽劍道事件兩次火災

我創建了一個小的fiddle

var StoreViewModel = function() { 
    var self = this; 
    this.stores = ko.observableArray(stores); 
    this.selectedStore = ko.observable(stores[0].Id); 

    // this event fires twice, dont know why! 
    this.dataBoundEvent = function() { 
     alert('databound event ...'); 
     //doSomething(); 
    }; 
    this.changeEvent = function() { 
     alert('change event ...'); 
     //doSomething(); 
    }; 
}; 

謝謝!

回答

2

當電網是初始化的結合事件被稱爲以及數據何時設置。

要停止這一點,只需使用dataSource代替data

<div id="wrapper"> 
    <select data-bind="kendoDropDownList: { 
     dataSource: stores, 
     dataTextField: 'Address', 
     dataValueField: 'Id', 
     dataBound: dataBoundEvent, 
     change: changeEvent 
    }"></select> 
</div> 

數據源是正常的方式和劍道的支持方式。

+0

不錯,謝謝! – chris

1

相信dataBoundEvent被調用用於

  1. 裝訂背襯數據(存儲)
  2. 結合的選定值(selectedStore)