首页 > 解决方案 > 如何使用 JavaScript 更改标签的文本?

问题描述

有一个标签和一个输入元素。

<div id="mydiv" class="my-div-class"><label id="id-label">abc<input type="text" id="id-text"></label></div>

现在我想更改标签的文本(例如从 abc 到 efg)

这不会改变它:

$('#id-label').html('efg');

这使得输入消失:

$('#id-label').html('efg');

$('#id-label').html('efg');
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div id="mydiv" class="my-div-class"><label id="id-label">abc<input type="text" id="id-text"></label></div>

标签: htmljquery

解决方案


您的输入元素位于标签内,因此您将擦除内容

这会更好

注意:如果标签不需要任何标记,请使用 .text() 而不是 .html

$('#id-label').text('Prompt: ');
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div id="mydiv" class="my-div-class">
  <label id="id-label" for="id-text">abc</label>
  <input type="text" id="id-text">
</div>


推荐阅读