我正在尝试从动态生成的按钮调用函数。但是,单击链接时click()函数不起作用。无法弄清楚原因。
if ( hasCap === 'image' ) {
caption = $(this).data('caption');
link = '<a href="#" style="float: right; margin-top: -10px;" class="hidecaption">Hide Caption</a>';
return link + (caption ? caption + '<br />' : '') ;
}
$( ".hidecaption" ).click(function() {
alert( "target called" );
});
答案 0 :(得分:0)
你的jQuery函数是否在函数中?
$(document).ready(function{});
jQuery点击事件将在文档加载后触发。
答案 1 :(得分:0)
你需要一些与
相似的东西$("EXISTING_DOM_ELEMENT_SELECTOR").on(
"the_event",
"dinamic_element_selector",
function yourBehaviour(){
//The code of your function goes here
}
);
在你的情况下你会有
$(".existing-parent").on('click', '.hidecaption', myBehaviour)
function myBehaviour(){}
这大致会转换为:对于.hidecaption
内.existing-parent
类的任何元素,添加一个将执行函数myBehaviour()
的单击事件侦听器。为了便于阅读,myBehaviour在另一个函数中被分开。
.existingParent
与动态元素的achor类似。