我想使用Javascript / Jquery用值填充表。
我有一个递增id的表(td-1
直到td-42
),我想用JQuery / Javascript填充这个表。
目前我正在使用此脚本,但我知道错误$('#td-'+i)
无法正常工作,因为使用的ID构建错误:$('#td-'12)
不是有效的ID。
有人快速解决这个问题吗?我被卡住了......
for (var i = 1; i < 43; i++) {
if (i < firstDay || i >= (howMany + firstDay)) {
$('#td-'+i).value("");
} else {
$('#td-'+i).value(i-firstDay);
}
}
答案 0 :(得分:1)
使用text()
并且有效。
var firstDay = 3, howMany = 1;
for (var i = 1; i < 7; i++) {
if (i < firstDay || i >= (howMany + firstDay)) {
$('#td-'+i).text("");
} else {
$('#td-'+i).text(i-firstDay);
}
}
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table>
<tr>
<td id='td-1'></td>
</tr>
<tr>
<td id='td-2'></td>
</tr>
<tr>
<td id='td-3'></td>
</tr>
<tr>
<td id='td-4'></td>
</tr>
<tr>
<td id='td-5'></td>
</tr>
<tr>
<td id='td-6'></td>
</tr>
</table>
&#13;
答案 1 :(得分:0)
首先,出于效率原因重新考虑在元素上放置大量ID,但将其放在一边:
jQuery中有.each()
的便捷回调,它接受递增的(当前)索引和对元素的引用。
根据DOM结构,你可以这样做:
$('td', '#mytable').each(function(ix, tdel){
$(tdel).attr('id', 'td-' + ix).text(ix); // or $(this).attr...
});
......看看你需要去哪里。