动态添加的元素上的事件处理程序不适用于 select2 插件
event handler on dynamically added element not working with select2 plugin
我以前做过一百万次,但这次根本行不通!我有一个功能可以动态添加一个带有链接的表单,该链接将充当按钮
content += '<a name="btn-opprettKontakt" id="btn-opprettKontakt" class="btn-opprettNy btn btn-small btn-primary pull-right" data-action="opprettKontakt">Opprett</a>';
return content;
然后我有链接的这个事件处理程序
$('body').on('click','.btn-opprettNy', function() {
alert('button clicked');
});
表单位于 select2 容器内,该容器也是动态添加的,因此除了"body"之外没有父元素。但这永远不会燃烧。
我还有一个用于所有"按钮"元素的事件处理程序,用于检查数据操作,该操作适用于所有其他按钮。如果我将此链接更改为按钮,它也永远不会触发。
如果我使用document.ready上存在的元素,例如"body",.on((应该适用于动态添加的元素,对吗?也许 select2 容器把事情搞砸了?
我在动态添加的元素上还有其他事件处理程序,这些元素工作得很好。
更新
Select2 会终止下拉列表中的所有鼠标事件。到目前为止,我找到的唯一解决方案是使用内联点击
Select2 会杀死下拉列表中的所有鼠标事件。到目前为止,我找到的唯一解决方案是使用内联点击
这也是一个解决方案,可以帮助其他人解决类似问题。
相关文章:
- html5 drawImage适用于firefox,而不是chrome
- Jquery Ajax POST不工作.适用于GET
- 如何调试遗留的javascript代码(适用于IE,但在Google Chrome中不正常)
- .load()适用于window,而不是ID
- 使用Jquery更改css样式适用于id's、 不在课堂上
- 提交按钮不会;不适用于Chrome或Firefox,但适用于Internet Explorer
- 为什么 javascript 中的“btoa”编码适用于 20 位字符串而不是 20 位整数
- Javascript String to Date适用于Chrome,而不是FF或Safari
- Onchange,向上,向下箭头键适用于FF和Chrome,但在IE中不起作用
- .load() 适用于 IE 和 dreamweaver 预览版,但不能使用 opera 和 chrome
- 找不到适用于 Highcharts 的 JSON 数组语法
- 为什么在jQuery中使用focusout适用于Firefox,而使用addEventListener则不适用;t
- jQuery选择菜单验证器适用于FF和Chrome,但不适用IE
- 单选按钮'onclick'适用于Chrome和Firefox,但不适用IE
- JQuery ScrollTop适用于chrome,但不适用firefox
- window.opener.location.href适用于IE,但不适用Chrome或Safari
- Frame Busting buster不完全适用于IE
- Jquery touch punch适用于Chrome和Firefox,但不适用IE
- 背景更改仅适用于chrome+$.预加载不适用;不起作用
- JavaScript window.location.replace适用于Firefox,但不适用IE或Chrome