从id修改下一个元素的文本

时间:2015-11-14 16:48:39

标签: javascript jquery html html5 input

我的HTML:

<li>
  <input type="checkbox" id="check-1">
  <label for="check-1">foo</label>
</li>

我试图用这个JS代码将“foo”改为“bla”:

$("#check-1 label").text("bla");

但没有任何反应,我没有错误。我也试过了:first-child

有什么想法吗?

4 个答案:

答案 0 :(得分:2)

您可以使用此

$('label[for=check-1]').text('bla');

答案 1 :(得分:1)

在输入中没有子元素,您可以使用$.next在输入后获取下一个元素

&#13;
&#13;
$("#check-1").next('label').text('bla');
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<li>
  <input type="checkbox" id="check-1">
  <label for="check-1">foo</label>
</li>
&#13;
&#13;
&#13;

答案 2 :(得分:1)

label不是input的孩子。它是 next 元素:

&#13;
&#13;
$("#check-1").next().text('bla');
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<li>
  <input type="checkbox" id="check-1">
  <label for="check-1">foo</label>
</li>
&#13;
&#13;
&#13;

答案 3 :(得分:1)

试试这个

$("#check-1 + label").text("bla");
相关问题