getElementById不返回任何值。我的目标是我有一个文本内容和 一个动作我必须替换文本的值。我用标签来显示 有没有更好的方法来显示这样的修改过的文本,我不想使用文本框。
<% for(int i=0; i<lines.length;i++) {
if(lines[i].contains(" ")) { %>
<label id='idkey<%=i%>' name='key1<%=i%>'>ABC</label>
<%
}
} %>
for(j=0; j<len; j++){
var lblElement = document.getElementById('idkey'+j).innerText="ddd";
alert(lblElement);
}
答案 0 :(得分:1)
嗨嗨,
我认为您的ID错误,innerText正常使用http://jsfiddle.net/mPc2E/ carreful,innerText返回你新文本的值,而不是修改后的标签。
document.getElementById('lab').innerText = " toto"
答案 1 :(得分:0)
答案 2 :(得分:0)
行var lblElement = document.getElementById('idkey'+j).innerText="ddd";
未将lblElement
设置为等于元素 - 而是等于文本"ddd"
。
请尝试以下方法:
for(j=0; j<len; j++){
var lblElement = document.getElementById('idkey'+j);
lblElement.innerText="ddd";
alert(lblElement);
}
注意:这假设len
变量包含正确的值