我有一個自訂面板添加到GrapesJS編輯器中。此面板有一個值的下拉式選單。當下拉式選單中選擇的項目改變時,我想觸發一個函數運行。我嘗試了以下方法:
editor.Panels.addPanel({ id: 'myPanel', content: '<select onChange="onChangeFn"><option>a</option><option>b</option></select>', visible: true, buttons: [], });
如果函數onChangeFn()
未定義,則在變更下拉式選單中所選的項目時會發生錯誤。但是,當函數被定義時,它不會運行(也沒有錯誤)。
我了解如果我使用按鈕,我可以配置command
屬性來執行相關的命令。但是,在這種情況下,面板需要是一個下拉式選單。
P粉4773692692023-09-17 13:19:24
最終我直接附加了一個事件監聽器。也就是說,在給選擇元素一個id之後(例如 dropdownElement
),
document.getElementById("dropdownElement").addEventListener('change', function(e) {console.log(e.target.value);});