如何使用jquery更新标签标签
How to update label tag using jquery
我有以下HTML:
<div id="myDiv">
<table id="tbl0">
<tr id="tr0" style="display: none;">
<td>
<label id="lbl0"></label>
</td>
</tr>
<tr id="tr1" style="display: none;">
<td>
<label id="lbl1"></label>
</td>
</tr>
<tr id="tr2" style="display: none;">
<td>
<label id="lbl2"></label>
</td>
</tr>
</table>
</div>
和下面的jquery设置行为可见,并更新(但失败)一些文本标签的标签。
var myStr = $(this).text();
var myArr = myStr.split(',');
$.each(myArr, function (i) {
// This part works just fine
var tr = $('#myDiv').find("#tr" + i);
tr.css('display', 'inline');
// The label is found, but I can't get jquery to update the text of
// ...it no matter what I try
var lbl = tr.find("lbl" + i);
lbl.val('hello world'); // doesn't work
lbl.text('hello world'); // doesn't work
lbl.html('hello world'); // doesn't work
});
我哪里做错了?
try this…
var lbl = tr.find("#lbl" + i);
您正在尝试选择<lbl1/>
标记,该标记显然不存在
使用#
指定要搜索的id
你是错误的标签被发现,你需要使用#
来指定它是一个id:
var lbl = tr.find("#lbl" + i);
同时:
lbl.text('hello world');
lbl.html('hello world');
是设置标签文本的正确方法,我更喜欢.html()
,因为它不解析来自htmlspecialchars的字符串,它可能会稍微快一些。
错误在这一行:
var lbl = tr.find("#lbl" + i);
您忘记了#符号,因为您正在按ID查找。
我偶然发现了这个线程,虽然它帮助我在正确的方向上引导我,但一旦我通过设置标签元素上的innerHTML
属性找到了我的标签,我就能够以不同的方式解决问题。我用的是jQuery。
var labels = document.getElementsByClassName('someclassname');
$(labels).each(function (index, element) {
element.innerHTML = 'hello world';
});
相关文章:
- 如何在更新面板内部调用/触发javascript函数<触发器>标签
- 当输入位于标签内时,更新无线电标签文本
- 使用 jQuery(移动)更新多个选择标签
- 变量中的值未在标签标记中更新
- Riot Js更新标签
- 更新条形图并删除标签
- 更新标签数组时如何对其进行排序
- 在Meteor.js中通过同一路线内的锚点标签更新视图
- 如何使用输入模糊事件更新多个具有相同类名的标签的文本
- 在不刷新的情况下更新标签内的变量
- 更新 DOM 中的标签
- 异步更新标签时出现问题
- 如何根据用户在文本框中键入的内容更新标签文本
- Javascript 在更新面板和向导中设置标签文本重置
- 如何在 d3 中动态更新文本标签
- 在道场中编码,1.得到错误所有者文档 null 或不是对象,2.按钮标签更改后未更新
- 选中了“标签更新”复选框
- 使用 javascript 更新 html
- 如何更新还包含输入元素的标签文本
- 如何更新p的标签:在primefaces中ajax调用后,在不关闭组件的情况下选择CheckboxMenu