未捕获的TypeError:无法设置null的属性’innerHTML’

我正在使用phonegap-1.4.1为Android制作条形码扫描应用程序。 我需要定义一个数组code[] ,它可以存储扫描的所有条形码文本,我需要定义一个变量k作为计数器,每次扫描后增加1,这样我就可以在code[k]存储细节。 所以这是我以前的javascript文件,我已经定义了一个数组和一个变量计数器。

  localStorage["counter"]=0; var code = new Array(100); localStorage.setItem("code", JSON.stringify(code)); 

这是我的另一个js文件,我调用存储的数组并将存储在该数组中的值打印为"id"myvalue1是从扫描中获取的条形码文本。

  var barcodeVal = localStorage.getItem("myvalue1"); var test2 = localStorage.getItem("code"); code = JSON.parse(test2); var k = parseInt(localStorage.getItem("counter")); code[k] = "code[k]"; document.getElementById(code[k]).innerHTML = barcodeVal; k = k + 1; localStorage["counter"]=k; localStorage.setItem("code", JSON.stringify(code)); 

我一次又一次地调用条形码扫描function。 这就是为什么我使用数组来存储扫描的条形码的数据。这是我的扫描js文件,它给出了myvalue1的值

   var scanCode = function () { window.plugins.barcodeScanner.scan( function (result) { alert("Scanned Code: " + result.text + ". Format: " + result.format + ". Cancelled: " + result.cancelled); localStorage.setItem("myvalue1", result.text); window.location.href = 'page5.html'; }, function (error) { alert("Scan failed: " + error); }); } 

我收到错误为Uncaught TypeError: Cannot set property 'innerHTML' of null 。 我是手机和编码的新手。 有人请帮我解决这个问题。 提前致谢。

您不需要跟踪变量k 。 您可以使用以下脚本轻松管理所有条形码值。

请检查下面的jsFiddle …运行两次你可以看到差异。

的jsfiddle