Javascript:编辑表单字段的值?

时间:2013-06-17 10:06:44

标签: javascript html google-chrome google-chrome-extension

这是我的HTML:

<div class="myFormField">
     <input type="text" class="myFormField city" value="" name="city" id="city">
</div>

我尝试设置以下内容但它无法正常工作,当我使用提醒进行测试时,它返回未定义:

document.getElementsByClassName("myFormField city").value = "New York";

感谢任何帮助!

4 个答案:

答案 0 :(得分:2)

应该是:

document.getElementsByClassName("myFormField city")[0].value = "New York";

请查看getElementsByClassName的文档:

  

“返回一组包含所有给定类名的元素。”

getElementsByClassName会返回 set 元素,因此您需要访问该集合中的特定元素才能为其赋值 - 该集合的第一个元素为[0],第二个是[1]等。

jsFiddle here.

答案 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";