请帮我解决knockout.js代码
我尝试使用id中的select元素并更改它的css样式,但所有行都有相同的id,我不能使用函数getElementById。我怎么能这么简单?
<tbody data-bind="foreach: times">
<tr>
<td id=$index() data-bind="click: $root.select.bind($data, $index(), 0)> </td>
....
<td id=$index() data-bind="click: $root.select.bind($data, $index(), 19)> </td>
<tr>
</tbody>
答案 0 :(得分:0)
Id应始终是唯一的。将相同的类分配给您感兴趣的所有元素,并使用一些jquery:
document.getElementsByClassName('class_name')
编辑:好点。我原本打算建议使用jquery,然后记住这个功能。如果您使用的是jquery库,也可以尝试:
$('.class_name').each(function(index) {
...do something...
});
编辑:要回答您的问题,有几种方法可以做到这一点:
$('.class_name').attr('id', new_id)
或
$('.class_name').addClass('class_name')
取决于你想要做什么
答案 1 :(得分:0)
尝试使用此类代码:
<tbody data-bind="foreach: times">
<tr>
<td data-bind="attr: {id: $index()}, click: $root.select.bind($data, $index(), 0)></td>
<tr>
</tbody>
在此处详细了解attr
绑定:http://knockoutjs.com/documentation/attr-binding.html