这是我的HTML:
<div class="myFormField">
<input type="text" class="myFormField city" value="" name="city" id="city">
</div>
我尝试设置以下内容但它无法正常工作,当我使用提醒进行测试时,它返回未定义:
document.getElementsByClassName("myFormField city").value = "New York";
感谢任何帮助!
答案 0 :(得分:2)
应该是:
document.getElementsByClassName("myFormField city")[0].value = "New York";
请查看getElementsByClassName
的文档:
“返回一组包含所有给定类名的元素。”
getElementsByClassName
会返回 set 元素,因此您需要访问该集合中的特定元素才能为其赋值 - 该集合的第一个元素为[0]
,第二个是[1]
等。
答案 1 :(得分:2)
document.getElementsByClassName("myFormField city")
将返回元素数组
所以使用
document.getElementsByClassName("myFormField city")[0].value
答案 2 :(得分:1)
请注意,document.getElementsByClassName
获取了带有classname的元素数组。所以你的代码应该是,
document.getElementsByClassName("myFormField city")[0].value = "New York"
答案 3 :(得分:0)
您还有ID
document.getElementById("city").value = "New York";