document.getElementById()。onClick()不会在点击时触发

Amin Shah Gilani |

我在Rails应用程序的原始HTML5页面上有webpack。

我已经onClick在Webpack中定义处理程序:

$(document).ready(()=> {
  document.getElementById('add-card').onClick = () => {
    $('.ui.modal').modal('show');
  }
});

该按钮在页面上呈现为:

<a class="ui button" id="add-card">Click me</a>

单击它不会执行任何操作。但是,在控制台中,我可以看到定义了处理程序:

document.getElementById('add-card').onClick
ƒ () {
    $('.ui.modal').modal('show');
  }

当我使用时document.getElementById('add-card').onClick(),它运行完美!

当元素被点击时,如何触发我的onClick处理程序?

编辑:对于挑剔的观察者,我已经通过Webpack安装并正确配置了jQuery。

戴夫

您正在混合香草js和jquery。你可以做

$(document).ready(()=> {
    document.getElementById('add-card').addEventListener('click', () => {
        $('.ui.modal').modal('show');
    })
});

或者你可以做

$(document).ready(()=> {
    $('#add-card').on('click', () => {
        $('.ui.modal').modal('show');
    });
});

当您document.getElementById('add-card')获得Node而不是jQuery对象时,因此没有onClick(尽管有onclick,但是最好使用addEventListener)。如果您$('#add-card')返回了jQuery对象,则可以在其上使用jQuery方法。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

jQuery document.ready不会在没有警报的情况下触发

onclick不会在首次点击时触发(仅使用纯Java脚本回答)

Android OnClickListener不会在首次点击时触发

Android按钮不会在每次点击时触发事件

UIBarButtonItem操作不会在点击时触发

反应 onClick 不会在第一次点击时触发,第二次点击很好

触发 shopify 的 onclick 而不会在页面加载时发生

fullCalendar 不会在 document.ready 上加载标题

下拉菜单不会在点击时扩展,因为onChange不会触发

DropDown不会在点击时关闭

活动不会在点击时显示

文字不会在点击时隐藏

appRouter 不会在加载时触发

过渡不会在悬停时触发

调整大小事件不会在每次点击时触发

jQuery不会在第二次点击时触发

点击事件不会在for循环的每次迭代中触发

可点击的LinearLayout不会在点击时突出显示

React onClick不会在第一次点击时触发,第二次点击的行为符合预期(简单的调试消息直到第二次点击才会出现)

$(document).ready在导航到新页面时不会触发

不会在TextInputEditText android上触发onClick事件

TestCafe .click不会在iFrame中触发onClick事件

document.getElementById不会设置变量

jQuery不会在第一次点击时触发,而是在第二次点击时触发

模态框不会在点击时打开

Android Button不会在点击时改变颜色

模态不会在背景幕点击时关闭

香草Javascript标签不会在点击时关闭

复选框不会在点击时使用