通过ID形成输入值,而不是名称

时间:2012-12-14 00:18:45

标签: javascript html

我有一个输入名称为id的表单。

当我尝试使用document.getElementById获取输入值时,出现错误。

我可以使用表单名称和输入名称来访问该元素,但这会使脚本的灵活性降低很多。

有任何解决方法吗?

这是我的代码:

<form name='myform'>
   <input name='n1' id='i1' value='stuff'>
</form>

<script>
   var s=document.getElementById("i1").value;
   alert(s);
</script>

我在外部.js文件中有脚本,我想确保如果有人更改了表单的名称,脚本仍然有效。

2 个答案:

答案 0 :(得分:5)

您的代码工作正常,请查看此example

确保在DOM准备好后调用脚本。另外,请确保没有其他元素具有相同的id

答案 1 :(得分:0)

检查是否支持

function getElement (id)
{
   if (document.getElementById)
   {
      return document.getElementById(id);
   }
   else if (document.all)
   {
      return window.document.all[id];
   }
   else if (document.layers)
   {
      return window.document.layers[id];
   }
}