首页  >  问答  >  正文

触发事件的方法:通过自定义的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 天前970

全部回复(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
  • 取消回复