Saya mempunyai Kendo Grid dalam projek ASP.NET MVC 5 saya. Salah satu lajur ialah lajur pilih dan saya akan cuba menyahtanda kotak semak jika ia memenuhi syarat tertentu. Saya telah berjaya menyahpilih kotak pilihan. Masalahnya ialah ia hanya menukar UI tetapi tidak mengalih keluar apa yang dinyahpilih daripada this.select()
. Hanya nyahtanda baris tertentu yang menjadikan syarat = benar dan biarkan baris yang palsu ditandakan.
Ringkasnya, jika syarat = benar, saya mahu nyahtanda kotak, alih keluar dari this.select()
中删除,从 this.selectedKeyNames()
中删除,并从 this._selectIds()
, alih keluar dari this.selectedKeyNames()
dan alih keluar dari this._selectIds()< /code> code> untuk memadamnya. Jangan padamkan baris daripada jadual dalam UI.
Kod di bawah bukanlah kod sebenar yang saya gunakan tetapi sesuatu yang serupa dengannya. Kod di bawah mungkin tidak dijalankan.
function onChange(e) { var selectedRows = this.select(); for(var i = 0; i < selectedRows.length; i++){ selectedRows[i].find("input[type='checkbox']").prop('checked', false); if( 2 > 6) { alert("You can't select this"); } } }
nampaknya menjadi
change
事件无法在事件处理程序中阻止,因此您可以添加dataBound
pengendali acara dan melampirkan pengendali klik pada kotak pilihan yang dipilih. Jika syarat dipenuhi - hentikan penyebaran peristiwa:Dalam contoh ini, anda tidak boleh memilih item yang dihentikan.