所以我得到了一个代码,它应该添加span,如果它不存在于子节点上,但目前它只添加一个而不是其他人,因为“代码”看到它已经存在。怎么做,如果有新的div,那么它也会增加?
if($("#itemcart div").children().length > 0){
} else{
$("#itemcart div").append($("<span> X</span>"));
}
答案 0 :(得分:1)
您需要一个正确的Selector:
var spanLength = $("#itemcart div span").length;
if(spanLength > 0){
$("#itemcart div").append($("<span> "+(spanLength+1)+"</span>"));
} else{
$("#itemcart div").append($("<span> 1</span>"));
}
答案 1 :(得分:0)
不知道我是否理解,无论如何,假设你有多个div而你想检查每个div是否有子跨度,你可以这样做:
$("#itemcart div").each(function(){
if( $(this).children().length > 0){
} else{
$(this).append($("<span> X</span>"));
}
});
这将迭代每个div。在此循环中,您可以使用 this 来引用当前的 div ,并检查它是否有孩子 span
请参阅此处的示例:https://jsfiddle.net/3qkpLnd9/1/
答案 2 :(得分:0)
检查此代码。只需使用选择器进行编辑即可使用:
$('p.click').on('click', function () {
var newDiv = document.createElement('div'),
span = document.createElement('span');
span.innerText = 'X';
newDiv.appendChild(span);
$('.container').append($(newDiv));
});
和真正的小提琴: