我有一个jquery,当你点击a.data
时会执行一个动作。问题是当我用另一个函数创建多个a.data
时,它不会执行该操作。
我不明白为什么新的a.data
不起作用?
这会在a.data
divdata
var data_html = '<a class="data" href="#" value="'data.id'">' + ref.info + '</a>';
$(data_html).prependTo( $('#divdata') );
这会将操作转移到相应的a.data
$('a.data').click( function (){
$(this).attr('href');
var idvalue = $(this).attr('value');
idvalue *= 1;
// aqui realizo la acción
console.log(idvalue);
});
答案 0 :(得分:2)
您必须委托事件,如下所示:
$('#divdata').on('click', 'a.data', function (){
$(this).attr('href');
var idvalue = $(this).attr('value');
idvalue *= 1;
// aqui realizo la acción
console.log(idvalue);
});
答案 1 :(得分:1)
http://api.jquery.com/on/您的绑定方法仅绑定到现有元素。您需要使用on绑定到父元素,以便后续绑定元素。
$("#divdata").on("click", "a.data", function(){
// event stuff here
});