我需要在DIV元素中动态设置文本。最好的浏览器安全方法是什么?我有可用的prototypejs和scriptaculous。
<div id="panel">
<div id="field_name">TEXT GOES HERE</div>
</div>
下面是该函数的外观:
function showPanel(fieldName) {
var fieldNameElement = document.getElementById('field_name');
//Make replacement here
}
发布于 2008-09-23 15:41:08
您可以简单地使用:
fieldNameElement.innerHTML = "My new text!";
发布于 2008-09-23 15:41:02
$('field_name').innerHTML = 'Your text.';
Prototype的一个很好的特性是$('field_name')
和document.getElementById('field_name')
做同样的事情。使用它!:-)
John Topley的答案是使用Prototype的update
函数是另一个很好的解决方案。
发布于 2008-09-23 15:48:50
快速的答案是使用innerHTML (或者prototype的更新方法,这几乎是一样的)。innerHTML的问题是你需要避开被赋值的内容。根据您的目标,您将需要使用其他代码或
在IE中:
document.getElementById("field_name").innerText = newText;
在FF中:-
document.getElementById("field_name").textContent = newText;
( FF的实际代码中包含以下内容)
HTMLElement.prototype.__defineGetter__("innerText", function () { return this.textContent; })
HTMLElement.prototype.__defineSetter__("innerText", function (inputText) { this.textContent = inputText; })
现在我可以只使用innerText,如果您需要最广泛的浏览器支持,那么这还不是一个完整的解决方案,在原始版本中使用innerHTML也不是。
https://stackoverflow.com/questions/121817
复制相似问题