createElement("input")出现问题

我在创建隐藏的表单域时遇到了问题,或者至少无法从getElementByID访问它.
粗略概述:
我正在通过XMLHttpRequest读取一个XML文件,并将每个项目输出到一个唯一的div标记中,该标记具有一个动态生成的名称,然后将每个div标记附加到一个现有的div标记中.这是工作A-好的.
现在的问题是:
基本上,这样我就可以展示一个一般性的部分--即.书签、博客文章等--然后显示或隐藏每个部分中的特定项目.我希望能够通过另一个Java脚本函数显示下一个或前一个X个项目,但项目的数量可能会随着页面的每次刷新而变化,因此为了能够告诉每个部分的div标记中包含多少个项目,我在编写项目的末尾创建了两个隐藏的表单输入.一个是区段中的项目总数,另一个值是当前显示的项目的起始数.我将这两个值放入一个创建的表单中.
下面是创建表单和输入的代码

选择 | 换行 | 行号
  1. // create form
  2.                 newHiddenForm = document.createElement("form");
  3.                 newHiddenForm.name = newFormName;
  4.                 newHiddenForm.id = newFormName;
  5.                 document.body.appendChild(newHiddenForm);
  6. //create input for total
  7.                 newHiddenInput1 = document.createElement("input");
  8.                 newHiddenInput1.type = "hidden";
  9.                 newHiddenInput1.name = totalFormName;
  10.                 newHiddenInput1.id = totalFormName;
  11.                 newHiddenInput1.value = i; // i is the loop limiter
  12.  
  13. // create input for start value
  14.                 newHiddenInput2 = document.createElement("input");
  15.                 newHiddenInput2.type = "hidden";
  16.                 newHiddenInput2.name = startFormName;
  17.                 newHiddenInput2.id = startFormName;
  18.                 newHiddenInput2.value = 0;
  19.  
  20. //append the two inputs to the form
  21.                 mainFormElement = document.getElementById(newFormName);
  22.                 mainFormElement.appendChild(newHiddenInput1);
  23.                 mainFormElement.appendChild(newHiddenInput2);
  24.  
  25.  
  26.  

在运行脚本时,这不会给我带来任何错误,但当我尝试从另一个javascript函数访问它时,它告诉我它没有属性

选择 | 换行 | 行号
  1.             totalObj = document.getElementById(totalName);
  2.             totalItems = totalObj.value
  3.  

我已经进行了检查,以确保上面的'totalName'与写入输入标记的名称相同.
有什么建议吗?

# 回答1


它应该与ID相同,而不是名称.

标签: Javascript

添加新评论