【发布时间】:2011-11-01 22:52:16
【问题描述】:
我当前的设置会加载一个动态列表,此时我通过 jquery 创建一个点击事件,如下所示:
$('#listReports li').click(function () {
var selected = $(this).text();
alert("List Item: " + selected);
});
我有代码可以让用户保存一个附加到列表中的报告。在我再次调用该函数之前,列表中的新项目不会触发点击事件。问题在于事件被触发两次的旧项目。
这是我如何附加列表项并再次调用然后函数:
$("#save").click(function (e) {
if ($("#reportParams li").size()> 0) {
var fileName = $('#reportFileName').val();
if (!fileName) {
alert("You must enter a file name!");
}
else {
$('#listReports').append('<li><a href="#">'+fileName+'</a></li>');
$('#listReports li').click(function () {
var selected = $(this).text();
alert("List Item: " + selected);
});
}
}
});
有没有办法只定义一次点击事件并让它影响添加到列表中的新项目?
【问题讨论】:
标签: javascript jquery html