所以我试图追加一个新的<li>
并每次将其ID号增加1,所以我最终会得到类似的东西:
<ul id="bxs">
<li id="item-1">1</li>
<li id="item-2">2</li>
<li id="item-3">3</li>
<li id="item-4">4</li>
<li id="item-5">5</li>
<li id="item-6">6</li>
</ul>
这就是我的jQuery的样子:
var itemCount = 1;
$(function() {
$("#NewItem").click(function(e) { // NewItem is my button
e.preventDefault();
itemCount++;
var element = $("<li id="item-" + itemCount>" + itemCount + "</li>");
$("#bxs").append(element);
});
});
我做错了什么?在div中添加itemCount的位置一定有问题。我也尝试了这个:<li id="item-" + itemCount + ">
但是也不起作用。
有人可以指导我吗?
答案 0 :(得分:3)
你没有正确连接你的字符串。您应该在双引号内使用单引号。此外,如果您已有现有项目,则无法设置itemCount = 1
。我建议动态设置itemCount
。见下面的例子(和小提琴)。
$(function() {
$("#NewItem").click(function(e) { // NewItem is my button
e.preventDefault();
var itemCount = ($("[id^='item-']").length + 1);
var element = $("<li id='item-" + itemCount + "'>" + itemCount + "</li>");
$("#bxs").append(element);
});
});
答案 1 :(得分:3)
试试这个......
var element = $("<li id='item-" + itemCount +"'>" + itemCount + "</li>");
答案 2 :(得分:2)
为什么使用$(在HTML代码前面?
var element = '<li id="item-' + itemCount+ '">' + itemCount + '</li>';
认为这可以解决问题
答案 3 :(得分:2)
这是一个奇怪的字符串,请尝试使用单引号作为字符串;
var element = $('<li id="item-' + itemCount + '">' + itemCount + '</li>');
答案 4 :(得分:1)
var element = $("<li id="item-" + itemCount>" + itemCount + "</li>");
需要
var element = '<li id="item-' + itemCount + '">' + itemCount + '</li>';
答案 5 :(得分:1)
我总是选择尽可能使用API。它可以节省这样的问题。
var element = $("<li></li>", { id: "item-" + itemCount }).html(itemCount);