我設置編程複選框,suspendEvents不起作用
,因爲我將它設置動態我想暫停(改變事件)設備上的事件,因爲複選框的變化,我有一些其他的事情被執行。
我已經嘗試使用下面的代碼,但它不起作用。
checkbox.suspendEvents(false);
checkbox.setValue(true);
checkbox.resumeEvents();
感謝
我設置編程複選框,suspendEvents不起作用
,因爲我將它設置動態我想暫停(改變事件)設備上的事件,因爲複選框的變化,我有一些其他的事情被執行。
我已經嘗試使用下面的代碼,但它不起作用。
checkbox.suspendEvents(false);
checkbox.setValue(true);
checkbox.resumeEvents();
感謝
複選框。 setRawValue(true);方法不會觸發更改事件。
看起來像一個extjs bug,解決方法是設置checkbox.lastValue = true;
以及setRawValue以檢測下一個更改事件。
的事件,這是行不通的,它會正確設置複選框,但是當我取消選中它時不會聽取更改導致功能丟失的事件。無論如何感謝您的回覆 – 2014-09-12 09:48:13
是的你是對的,編輯我的答案與解決方法.. – newmount 2014-09-12 10:52:38
感謝您的解決方法,它現在工作。 :-) – 2014-09-12 12:20:50
雖然這麼想的看來是任何你的代碼錯誤你嘗試過:
checkbox.suspendEvent('change');
checkbox.setValue(true);
checkbox.resumeEvent('change');
是的,我也試過,但沒有運氣 – 2014-09-12 12:08:17
適合我;) – Nilay 2018-02-13 04:49:29
的suspendEvent,不適用resumeEvent在控制器中定義的事件監聽器,只在事件偵聽器直接在零件。
newmount的解決方案是最好的解決方法
的suspendEvent事件的錯誤是有組合框了。下面是錯誤報告:
我發現修復它的組合框的解決方案。也許該解決方案也適用於複選框。它適用於Ext JS 4.2.1。也許還有其他版本。
checkbox.suspendCheckChange++;
checkbox.setValue(true);
checkbox.suspendCheckChange--;
如果您正在尋找將值重置爲原來的值(例如未驗證或保存)。
checkbox.reset();
在extjs中正常工作4.2.2
以何種方式無效? – pherris 2014-09-11 20:26:35
它不會暫停複選框 – 2014-09-12 09:49:11