首頁  >  問答  >  主體

觸發事件的方法:透過自訂的GrapesJS面板實現

我有一個自訂面板添加到GrapesJS編輯器中。此面板有一個值的下拉式選單。當下拉式選單中選擇的項目改變時,我想觸發一個函數運行。我嘗試了以下方法:

editor.Panels.addPanel({
            id: 'myPanel',
            content: '<select onChange="onChangeFn"><option>a</option><option>b</option></select>',
            visible: true,
            buttons: [],
        });

如果函數onChangeFn()未定義,則在變更下拉式選單中所選的項目時會發生錯誤。但是,當函數被定義時,它不會運行(也沒有錯誤)。

我了解如果我使用按鈕,我可以配置command屬性來執行相關的命令。但是,在這種情況下,面板需要是一個下拉式選單。

P粉865900994P粉865900994399 天前974

全部回覆(1)我來回復

  • P粉477369269

    P粉4773692692023-09-17 13:19:24

    最終我直接附加了一個事件監聽器。也就是說,在給選擇元素一個id之後(例如 dropdownElement),

    document.getElementById("dropdownElement").addEventListener('change', function(e) {console.log(e.target.value);});

    回覆
    0
  • 取消回覆