我有一些div
<div id="editCatalogListItemHideMe">
<div class="listItem">
<table class="sectionTable">
<tr>
<td class="sectionLeft">
<span id="numberLabel"></span><span>:</span>
</td>
<td class="sectionCenter">
<span id="contentLabel"></span>
</td>
<td class="sectionRight">
<img runat="server" src="images/noselected.png" class="selectImage" />
</td>
</tr>
</table>
</div>
</div>
我想将文本设置为 numberLabel 和 contentLabel
$(document).ready(function () {
var counter = 1;
var content = ["val1", "val2", "val3", "val4", "val5"];
$('#AddSectionButton').click(function () {
var section = $('#editCatalogListItemHideMe').html();
$(section).find('#numberLabel').text(counter);
$(section).find('#contentLabel').text(content[counter % content.length]);
$('div#editCatalogLeftBottomContent').append(section);
counter++;
});
此脚本附加空 div,没有我的值。我怎样才能做到这一点?
最佳答案
使用这个:
var $section = $($('#editCatalogListItemHideMe').html());
$section.find('#numberLabel').text(counter);
$section.find('#contentLabel').text('text', content[counter % content.length]);
$('div#editCatalogLeftBottomContent').append($section);
在当前代码中,您将 section
定义为字符串。然后,在 section
声明后面的行中,您将值包装在 JQuery 对象中。这将修改新创建的对象的内容,但不会修改section
变量。
我已经调整了您的代码,以便 $section
是一个引用新创建的 JQuery 对象的变量。声明后的行对新创建的对象进行操作。在代码末尾附加了 HTML。
关于jquery 设置文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7727266/