我有一个小的java脚本,它基本上可以获取用户输入表单的任何内容,并将其作为JSON发送给执行某些操作的servlet。它在提交表单之前就是一种“预览”功能。该脚本适用于Chrome,但Firefox无法正确解析我在页面中隐藏的div,该div告诉JS表单中有多少个字段。
JS
function send_formdata() {
var numGenes = parseInt(document.getElementById("numGenes").textContent);
alert(numGenes);
var jsonObj = [];
for (var i = 0; i <numGenes; i++) {
if (document.getElementById("c"+i).value == "") {
alert("Please fill out all fields before checking tax model.");
return;
}
jsonObj.push({"value" : document.getElementById("c"+i).value})
}
...
我添加了alert()作为调试。在chrome中,警报在Firefox中显示“25”,显示为“NaN”。
正在挑选的页面部分:
<div id="numGenes" style="display: none">25</div>
关于为什么Firefox无法在这里工作的任何想法?这不是错误的,脚本只是最终向服务器发送一个空数组。
答案 0 :(得分:1)
您必须将radix
作为第二个参数传递。 Click here查看文档。
您应该像这样使用它:
var numGenes = parseInt(document.getElementById("numGenes").textContent, 10);
答案 1 :(得分:0)
如上所示的代码在末尾缺少单个“}”以正确关闭该功能。否则,它适用于Firefox - 显示值中的值。后续的document.getElementId()失败了,但我假设你有DOM元素,其id为c0,c1等。