这应该是非常简单的,但是就更改下一个标签的文本而言,以下代码没有做任何事情。我曾尝试使用 .text、.html 等,但均无济于事。这段代码有什么问题吗?
<script type="text/javascript">
$(document).ready(function()
{
$("input:checkbox").on("change", checkboxChange);
function checkboxChange()
{
$("#"+this.id).next("label").text("TESTTTT");
}
});
</script>
<td width="15%" align="center"><input type="checkbox" name="task1" id="task1"></td>
<td width="25%" align="center"><label for="task1"></label></td>
最佳答案
复选框在 td
中,因此需要先获取父级:
$("input:checkbox").on("change", function() {
$(this).parent().next().find("label").text("TESTTTT");
});
或者,找到具有相同 id
的 for
的标签(可能比反向遍历更高效):
$("input:checkbox").on("change", function() {
$("label[for='" + $(this).attr('id') + "']").text("TESTTTT");
});
或者,更简洁的只是 this.id
:
$("input:checkbox").on("change", function() {
$("label[for='" + this.id + "']").text("TESTTTT");
});
关于javascript - 使用 JQuery 设置标签文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20903822/