我在html中有一个元素,如下所示。
<tr><td class="HELPTEXT"><span lang="HLPMTXT1" id="HLPMTXT1"></span></td></tr>
我想根据特定条件更改lang的值。 我尝试了如下所示。但它没有用。
<script>
document.getElementById("HLPMTXT1").lang ="HLPMTXT2"
</script>
有人可以帮我改变span的lang属性值吗?
答案 0 :(得分:0)
document.getElementById('HLPMTXT1').setAttribute('lang', 'HLPMTXT2');
并非所有属性都可以通过对象属性
访问答案 1 :(得分:0)
您应该使用setAttribute(name, value)
来执行此操作,因此您的代码将如下所示:
document.getElementById("HLPMTXT1").setAttribute("lang", "HLPMTXT2");
您还可以使用getAttribute(name)
使用JavaScript检索值。
编辑:您的脚本也可能无法正常工作,因为您尝试在DOM中存在之前访问该元素。确保元素存在的最佳方法是:a)将脚本标记放在元素之后,b)使用unload事件延迟JS的执行,直到所有内容都被加载,或者c)使用DOMContentLoaded事件。然而,后者在跨浏览器上工作有点棘手(没有重用已经解决这些问题的其他人的代码)所以你可能想先阅读它。