这是我的JS。我不知道为什么追加到最后一个孩子的“ X”在第一次单击时不起作用,但在第二次单击时却起作用。 “ x”网址位于克隆的div中。那是问题所在吗?还是HTML中有问题?
$(document).ready(function () {
$(".add").click(function () {
var aaa = $(this).parent("div").attr('id')
$(this).parent().children(".add").siblings(".name,.detail,.price").clone().appendTo(".CART").wrapAll('<div class="dump ' + aaa + '"></div>')
$(this).removeClass("add").addClass("added");
$(".dump:last-child").append('<a class="delC" href="javascript:delC()">x</a>');
$(".dump").removeClass("dump")
});
})
////////////////
function delC() {
$(document).on('click', '.delC', function () {
var xx = $(this).parent("div").attr('class')
$("." + xx + "").remove()
})
}
<div id="itemA">
<div class="detail">USB</div>
<div class="name">USB type1</div>
<div class="price">1500</div>
<div class="weight">20 Gr</div>
<a class="add">add</a>
</div>
<div id="itemB">
<div class="detail">RAM</div>
<div class="name">RAM type1</div>
<div class="price">2000</div>
<div class="weight">50 Gr</div>
<a class="add">add</a>
</div>
<div class="CART"></div>
最佳答案
您不需要在href上调用单独的函数。您可以将其绑定到单击功能。
$(document).on('click', '.delC', function(e){
e.preventDefault();
var xx = $(this).parent("div").attr('class')
$("."+xx+"").remove()
})
工作的JsFiddle http://jsfiddle.net/j65uex6t/
关于javascript - 我的JS工作第二次点击,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29637645/