Efek Fungsi: Klik kotak centang untuk secara otomatis menambahkan baris informasi yang relevan ke tabel. Jika kotak centang dibatalkan, konten dalam tabel akan dihapus secara otomatis.
Ini mungkin efek awal ~~~~
// Tentukan penyimpanan awal data tabel var griditems = []; // box centang provinsi var $ provinceCheckbox01 = new ext.form.checkboxgroup ({xtype: 'checkboxgroup', fieldlabel: 'seleksi provinsi', labelwidth: 60, kolom: 9, vertikal: true, margin: '10 0 0 0 0 0 0 0.15, 60, 60, 9, 9, vertikal: true, margin: '10 0 0 0 0 0 0 0 0 0.11, 60, 60, 6, 9, vertikal: true, margin: '110 0 0 0 0 0 0 0 0 0 0 0.15, 60, {{vertical: {vertikal: margin: '110 0 0 0 0 0 0 0 0 0 0 0 0 0, {{80 '110, '110, 60,labelAlign: "left"},items: provinceItems, //ProvinceItems is data obtained from other channels listeners: {change: OnChange // Check box changes event}});//Table initial data model var gridPanelStore = new Ext.data.Store({fields: ['discount', 'provinceId', 'provinceName'],data: {'items': ''}, proxy: {type: 'memori', pembaca: {type: 'json', root: 'item'}}}); // gridvar $ grid = ext.grid.panel baru ({store: gridpanelstore, seltype: 'rowModel', singleselect: true, margin: '120 0 0 0. {{{true: {{{true: {{true: {{true: {{true: {{true: {singles: ' 'Rownumberer', header: 'nomor seri', lebar: 70, align: 'center'}, {header: 'provinsi', lebar: 150, sortable: true, menudisabled: true, align: 'center', dataindex: 'provinsi', datasdex: 'Diskon', editor: {{{{{{{{{{{{{} {{} {{} {{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{Datain {{{{{{{{ "PagingToolBar", Dock: "Bottom", DisplayInfo: True}], plugin: [cellediting]}); // acara mendengarkan acara Onchange (newValue, oldValue, eopts) {// clear data griditems = []; // Pilih provinsi IDvar centang centang = this.getvalue (). if (checkedId == tidak terdefinisi) {griditems = [];} else if (checkedid.length == tidak terdefinisi) {untuk (var i = 0; i <provinceitems.length; i ++) {if (0] = {i] .inputValue == checkedId) {gridItems [0] = {{i] .inputValue == checkEid) {griditems [0] = {{i] .inputValue == CheckEid) {gridItems [0] = {i]. provinceItems [i] .boxLabel, "Diskon": "1"};}}} lain jika (centangedid.length! == tidak ditentukan) {for (var j = 0; j <checkedid.length; j ++) {for (var o = 0; o <provinceitem {griditems [j] = {"provinceId": checkedId [j], "provincename": provinceItems [o] .boxlabel, "diskon": "1"};}}}} // console.log ($ griditems); $ grid.store.store.loaddata ($ griditems, false); $ grid.store.Fungsi serupa mungkin tidak digunakan dalam banyak hal.
Saat melakukan fungsi ini, data yang diperoleh setelah mengklik kotak centang tidak akan ditempatkan di jaringan.
Pada awalnya, saya ingin menetapkan nilai yang diperoleh secara langsung ke gridpanelstore.data.items, tetapi setelah penugasan, saya menggunakan store.reload () untuk menyegarkan data tabel selalu melaporkan kesalahan, mengatakan bahwa metode tersebut salah.
Saya pikir (belum tentu benar ~), mungkin itu karena model data saya memiliki terlalu banyak lapisan, yang dapat secara langsung mengembalikan kesalahan dari reload toko grid ().
Akhirnya, saya mencari API dan menemukan bahwa LoadData dapat secara langsung meneruskan nilai ke data.
Saya menggunakan nilai boolean salah.
Di atas adalah extjs yang diperkenalkan oleh editor. Klik kotak centang untuk menambahkan baris informasi yang relevan ke tabel. Saya harap ini akan membantu semua orang. Jika Anda memiliki pertanyaan, silakan tinggalkan saya pesan dan editor akan membalas semua orang tepat waktu. Terima kasih banyak atas dukungan Anda ke situs web Wulin.com!