Javascript 输入类型=";“隐藏的”;无法从getElementById获取
调用Javascript 输入类型=";“隐藏的”;无法从getElementById获取,javascript,html,hidden,getelementbyid,Javascript,Html,Hidden,Getelementbyid,调用getElementById()检索表单上的“隐藏”字段将返回null 我研究了其他SO问题,许多人在调用getElementById()时使用隐藏字段的“name”而不是“id”,或者在浏览器处理包含隐藏字段的实际html之前,在文件顶部的脚本中执行getElementById()。这两个错误都可以解释为什么getElementById()为它们返回null 我可能错了,但我不认为这是我的情况 这是我的表格: <form name="theDeleteItemForm" id="
getElementById()
检索表单上的“隐藏”字段将返回null
我研究了其他SO问题,许多人在调用getElementById()
时使用隐藏字段的“name”而不是“id”,或者在浏览器处理包含隐藏字段的实际html之前,在文件顶部的脚本中执行getElementById()
。这两个错误都可以解释为什么getElementById()
为它们返回null
我可能错了,但我不认为这是我的情况
这是我的表格:
<form name="theDeleteItemForm" id="deleteItemForm" action="deleteTheSelectedItem"
method="post"
<input type="hidden" id="theHiddenField" name="deleteThisSelectedItem" value="">
</form>
我不明白为什么从getElementById()
返回null
。我的印象是
getElementById()
适用于type=“hidden”
字段
此外,我用于隐藏字段--theHiddenField
--的id在我的文件中是100%唯一的
当我试图通过
getElementById()
获取隐藏字段时,为什么会得到null
?可能是因为您的
元素的格式不正确(如引用的示例所示,
在开始标记中丢失了)?使用document.getElementById('hiddenfield')。value怀疑这是原因,但是您的
标记未关闭。开头的
标记也缺少它的
。请修复HTML,这应该可以正常工作。并确保您的ID是唯一的如果取消隐藏该字段会发生什么?问题还在吗?天哪,鳄梨酱。在一个丢失的“>”上浪费了15分钟的生命来结束开头的标签。至少对于HTML,不需要按照关闭。谢谢大家--我和我的代码进行了一场激烈的较量,但失败了,结束了解决了这个问题--我现在从getElementId得到了一个非空的返回元素--谢谢你们。这是正确的,这将是必需的,但还有一些事情正在发生。这不会阻止getElementById部分返回null。如果它不带.value而为null,则它将不带.value进行定义。
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();
}