Javascript JQuery-appendTo()的问题
我将元素从一个列表移动到另一个列表,问题是: 根据Javascript JQuery-appendTo()的问题,javascript,jquery,html,dom,Javascript,Jquery,Html,Dom,我将元素从一个列表移动到另一个列表,问题是: 根据的不同,我将javascript函数绑定到,如果我单击一个中具有特定ID的中的一个,则函数例外 当我成功移动时,假定已经在另一个中(目标一个)。但是如果我在新列表中单击,事件仍然与源事件绑定 如何将与当前的绑定 谢谢你的帮助 <ul id="sourceList"> <li>element1</li> <li>element2</li> </ul> &l
的不同,我将javascript函数绑定到,如果我单击一个中具有特定ID的
中的一个
,则函数例外
当我成功移动
时,假定
已经在另一个
中(目标一个)。但是如果我在新列表中单击
,事件仍然与源事件绑定
如何将
与当前的
绑定
谢谢你的帮助
<ul id="sourceList">
<li>element1</li>
<li>element2</li>
</ul>
<ul id="destinationList"></ul>
<script>
$('#sourceList li').click(function () {
$(this).appendTo('#destinationList');
console.log("from source");
});
$('#destinationList li').on("click", function () {
$(this).appendTo('#sourceList');
console.log("from destination");
});
</script>
- 要素1
- 元素2
$('#sourceList li')。单击(函数(){
$(this).appendTo(“#destinationList”);
console.log(“来源”);
});
$(“#目标列表li”)。在(“单击”,函数(){
$(this.appendTo(“#sourceList”);
控制台日志(“从目的地”);
});
事件在第一次执行脚本时被绑定,因此,在代码中,来自#sourceList
的每个li
都有一个click事件附加到第一个定义的事件侦听器,无论您是否将元素移动到另一个容器。您需要为此使用事件委派:
$('#sourceList').on('click', 'li', function () {
$(this).appendTo('#destinationList');
console.log("from source");
});
$('#destinationList').on('click', 'li', function () {
$(this).appendTo('#sourceList');
console.log("from destination");
});
第一次执行脚本时会绑定事件,因此,在代码中,来自#sourceList
的每个li
都会将一个单击事件附加到第一个定义的事件侦听器,无论您是否将元素移动到另一个容器。您需要为此使用事件委派:
$('#sourceList').on('click', 'li', function () {
$(this).appendTo('#destinationList');
console.log("from source");
});
$('#destinationList').on('click', 'li', function () {
$(this).appendTo('#sourceList');
console.log("from destination");
});
这是我的荣幸。不,对不起,我没有意识到,我要提出这个问题。不管怎样,你的答案是:)好的。我不知道,对不起,我没有意识到,我要提出这个问题。不管怎样,你的答案是:)#MVP,要么是谷歌翻译
,要么就是懂西班牙语
,他的个人资料说他在乌拉圭,所以我希望他懂西班牙语。哈哈洛尔,如果我没有MVP,不管是谷歌翻译还是只懂西班牙语,那就太奇怪了。他的个人资料说他在乌拉圭,所以我希望他懂西班牙语。哈哈洛尔,如果我不这么做,那就太奇怪了