我正在尝试将onclick方法链接到按钮。 然而,该按钮是由一个插件加载的,该插件从我无法控制的外部源加载html。
我对jQuery比较陌生,所以任何帮助都会非常感激。
这是我用来创建事件监听器的代码
var modal_container = jQuery('#wrapper').find('.seo-modal');
var modal_background = jQuery('body').find('.modal-backdrop');
var seo_button = jQuery('#seogroup').find('.textform-div input[type="submit"]');
jQuery(seo_button).on('click',function() {
jQuery(modal_container).removeClass('in');
jQuery(modal_background).removeClass('in');
});
上面的所有jquery都在文档就绪函数中。
答案 0 :(得分:0)
据我了解,您不知道按钮何时会出现?改为使用事件委托
jQuery('#seogroup').on('click', '.textform-div input[type="submit"]',function() {
jQuery(modal_container).removeClass('in');
jQuery(modal_background).removeClass('in');
});
这将监听seogroup元素的点击,但只有在您实际点击了委托定义(即您的按钮)时才会做出反应。如果seogroup是外部加载的html的一部分,请将更高的点击移动到您可以控制的DOM中。
答案 1 :(得分:-1)
您可以使用.off函数删除所有点击事件处理程序:
jQuery(seo_button).off('click');
jQuery('button').removeAttr('onclick');
jQuery(seo_button).on('click',function() {
jQuery(modal_container).removeClass('in');
jQuery(modal_background).removeClass('in');
});