2016-03-22 22 views
3

Kullanıcının birden fazla satır seçmesine izin verecek şekilde yapılandırılmış bir KnockoutJs Ko Kılavuzum var. Satırlar seçilebilir ve JS düğmelerinde hangi satırların seçildiğine karar verebiliyorum. Ancak, ekran oldukça doğru değil. Kullanıcı, ızgaranın solundaki onay kutusunu tıkladığında işaretlenmez.KnockoutJs KoGrid seçimi onay kutusunu işaretleyemiyor

JS görünüm modelimde aşağıdaki gridOptions kümesine sahibim. Aşağıdaki JsFiddle de aynı davranışı bulduk

this.gridOptions = { 
    data: self.myData, 
    enablePaging: true, 
    pagingOptions: self.pagingOptions, 
    filterOptions: self.filterOptions, 
    selectWithCheckboxOnly: true, 
    selectedItems: self.selected, 
    canSelectRows: true, 
    displaySelectionCheckbox: true, 
    columnDefs: [{ field: 'Timestamp', displayName: 'Timestamp', width: 130 }, 
       { field: 'State', displayName: 'State', width: 70 }, 
       { field: 'FaultApplication', displayName: 'Application', width: 110 }, 
       { field: 'FaultExceptionMessage', displayName: 'Exception Message', width: 400 }, 
       { field: 'FaultServiceName', displayName: 'ServiceName', width: 140 }, 
       { field: 'LinkToFaultsPage', displayName: 'Link to Fault', width: 80, cellTemplate: '<a data-bind="attr: { href: $parent.entity.LinkToFaultsPage}" >Fault</a>' } 
    ] 
}; 

: http://jsfiddle.net/BizTalkers/oowgbj80/

+0

: Bu şekilde keman HTML güncelleyin href özniteliği. Örnek: Fun and profit. – Soulriser

cevap

4

sütunlardan biri ben eylem edebilmek için kullanıcı ihtiyaç köprüler içerdiğinden ben true selectedwithCheckboxOnly kurdum GitHub kullanıcıları ricred ve kiaplayerhere tarafından çözülen bilinen bir hata gibi görünüyor. kogrid, onay kutusunun bağlı olduğu seçili durumu doğru şekilde güncelleştirmiyor. Verileriniz aracılığıyla özel bir afterSelectionChange yöntemini eklerseniz, sorunu çözersiniz. Ayrıca seçim için hücreyi tıklayarak için izin verirken, hücrelerinize bağlantıları etkinleştirmek için linklere bağlayıcı tıklama kullanmak yerine istiyorsanız

<div id="wrapper" data-bind="koGrid:{data:myObsArray, afterSelectionChange: function() { return true; } }"></div> 

(example)

İlgili konular