停止永不停止追加。 jQuery的

时间:2013-11-22 21:51:11

标签: javascript jquery html

我尝试设置它以便检查它是否有另一个变量,如果没有,则添加它。

var item = "<li>Testing</li>";
var hasItem = $(".target-class").has(item).length;
if(hasItem == 0) {$(".target-class").append(item)}

这不起作用,它会不断追加项目。

3 个答案:

答案 0 :(得分:1)

.has需要一个选择器,而不是HTML:

var item = '<li class="testing">Testing</li>';
var hasItem = $(".target-class").has('li.testing').length;

请阅读documentation

答案 1 :(得分:0)

所以,如果你的HTML是:

<div class="target-class"></div>

然后下面的while循环会添加div元素一次,然后停止执行:

var item = "<li class='testing'>Testing</li>";
var targetEl = $(".target-class");
while (!targetEl.has("li.testing").length) {targetEl.append(item);}

http://jsfiddle.net/cssimsek/qdpFJ/

答案 2 :(得分:0)

我实际上已经

var hasItem = $(".target-class").has(item).length;
搞砸了。它没有选择我认为它选择的东西。作为jQuery新手的提示,将.remove()添加到选择器的末尾。当您准确删除想要选择的内容时,您就知道自己拥有它。只需删除.remove()就可以了。 随着修复.has(项目),它现在有效。