这是我的js函数
function toggleCountry(country)
{
var elem = document.getElementsByName(country)[0].value;
alert(elem);
}
它被称为onclick事件
<a href="#" onclick="toggleCountry('usa');"><div class="navBarItems">USA</div></a>
我有另一个带有属性 name="usa"的 div,我想搜索它并禁用该文本。但是,当它在我的警报中返回时,我总是得到未定义的信息。
编辑:它是一个 div 标签。
最佳答案
document.getElementsByName(name)
要求您使用 name=""
属性。
完成后,尝试更改:
var elem = document.getElementsByName(country)[0].value;
致:
var elem = document.getElementsByName(country)[0].innerHTML;
(前提是这是您的目标)
.value
在这里是错误的方法(元素上没有 value 属性)。我能够很好地访问 .innerHTML
,因此您的函数正在选择适当的元素。如果 .innerHTML
不是您想要的,您可以用其他方法替换它。我不完全确定你在这里要达到什么目的,但希望这个 jsfiddle 有帮助:
关于javascript - document.getElementByName()[0] 未定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22696599/