我的HTML如下所示:
<div class="task-manager">
<label>Manager: <input type="text" value="" /></label>
</div>我需要动态修改标签管理器的文本。我尝试使用JQUERY文本方法,但它也替换了输入类型。
$taskTemplate.find(".task-manager label").text("M123")发布于 2015-05-12 13:57:29
您可以使用:
$taskTemplate.find(".task-manager label").contents().get(0).nodeValue = "M123:";发布于 2015-05-12 13:50:34
您应该更改HTML代码,因为<input>字段位于<label>中,而且当您更改此标签的值时,它还将覆盖和删除输入表单字段:
<div class="task-manager">
<label>Manager:</label> <input type="text" value="" />
</div>发布于 2015-05-12 13:54:39
只需将输入标签移至label标签外,因为当您更新标签的文本时,它会擦除标签的内容(这显然会删除输入标签inside it),因此请按以下方式更改代码
HTML代码:
<div class="task-manager">
<label for="title">Manager:</label>
<input type="text" id = 'title' value="" />
</div>JS代码:
$('.task-manager label').text('Deputy Manager :');实时演示@ Jsfiddle:http://jsfiddle.net/dreamweiver/w6arp71x/
注意/建议:_for属性添加到标签中,默认情况下将input绑定到label
https://stackoverflow.com/questions/30192859
复制相似问题