如何执行相同的循环操作?谢谢。
$('a.level').click(function() {
var level = $(this).parent('li').attr("class");
var nxvl = parseInt(level)+1;
var dir = $(this).html();
var curr = $(this);
var data = new Object();
data.n = new Date().getTime();
data.act = "getdirectory";
data.level = level;
data.direct = dir;
var str = $.toJSON(data);
$.post('ajax.php', { str: str }, function(result){
var data = eval('('+obj.data+')');
var html = [];
$.each(data, function(key, value) {
html[key] = "<li class='"+nxvl+"'><a href='javascript:void(0);' title='' class='level'>"+eval(value)+"</a><ul></ul></li>";
});
$(curr).next('ul').html(html.join(""));
$('a.level').click(function() {
// do the same action
}
});
return(false);
});
最佳答案
在这种情况下,您可能想要使用实时处理程序。改变你的外在:
$('a.level').click(function() {
...
}
致:
$('a.level').live('click', function() {
...
}
那么,在更新 $(curr).next('ul').html(...) 中的 HTML 后,您就不必担心添加新的点击处理程序
关于JavaScript重复 Action ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6675347/