无法从getElementById获取input type ="hidden"

wan*_*est 2 html javascript hidden getelementbyid

getElementById()正在返回对表单上检索"隐藏"字段的调用null.

我已经研究了其他SO问题,许多人在调用中使用隐藏字段的'name'而不是'id',getElementById()或者getElementById()在包含隐藏字段的实际html处理之前在文件顶部的脚本中执行浏览器.这两个错误都可以解释为什么getElementById()要返回null它们.

我可能错了,但我不认为这是我的情况.

这是我的表格:

  <form name="theDeleteItemForm" id="deleteItemForm" action="deleteTheSelectedItem" 
             method="post"
    <input type="hidden" id="theHiddenField" name="deleteThisSelectedItem" value="">
 </form> 
Run Code Online (Sandbox Code Playgroud)

这里有一个Javscript处理程序,当点击页面上的"删除"按钮时,它成功执行(我可以告诉我alert(),因为我在下面的处理函数中弹出了框):

function deleteItem()
{
    alert("Just entered deleteItem()");

    var theFieldToDelete = document.getElementById('theHiddenField');

     // THIS IS THE PLACE WHERE I FOUND THAT 'theFieldToDelete' WAS 'null'
    alert("Just got the hidden field element, which is: " +  theFieldToDelete );

      // THIS DOES NOTHING MORE THAN TO PREVENT THE 'alert' THAT FOLLOWS FROM APPEARING
    theFieldToDelete.value = "upForDeletion";

    alert("deleteItem() was called, about to submit the form");

    document.theDeleteItemForm.submit();    
}
Run Code Online (Sandbox Code Playgroud)

我不明白为什么我会从中获得null回报getElementById().我的印象是getElementById()type="hidden"领域的效果很好 .

此外,我用于隐藏字段的ID theHiddenField - 在我的文件中是100%唯一的.

null当我尝试通过隐藏的字段时,为什么会得到getElementById()

rai*_*7ow 7

可能是因为你的<form>元素形成不正确(如引用的例子 - >开头标记中缺少的)?