我试图根据我的QR码添加listview元素。因此,当我扫描一个QR码时,我取数组的第一个值,并添加一个带有第一个值的文本的listview元素,并使用计数器等等。但是,它并没有增加我的计数器。我得到的是,一旦listview刷新,函数appendToList()就会终止。 Count不递增,ArrayIndex保持为空。我怎样才能让柜台工作?还有阵列?该功能不会一直执行。
function scan() {
cordova.plugins.barcodeScanner.scan(
function(result) {
$("#nullExhibition").remove();
resetData(); // Removes the empty exhibition text
if (!result.cancelled) {
if (result.format == "QR_CODE") {
var value = result.text;
if(!localStorage.getItem("LocalData"))localStorage.setItem("LocalData","[]")
data = localStorage.getItem("LocalData");
//alert(data);
data = JSON.parse(data);
data.push(value);
localStorage.setItem("LocalData", JSON.stringify(data));
//location.reload();
alert(count);
appendToList();
// location.hash = '#Vote';
}
}
},
function(error) {
alert("Scanning failed: " + error);
}
);
}
//JJJ Function: creates table which will be refreshed in the homePage //CW Create the listview if not created
function appendToList() {
$("#list").append("<li id='" + count + "' style='font-family: 'Quicksand', sans-serif !important;' class='ui-content'><a href='javascript:pageGenerator()'>" + data[0] + "</a></li>");
$("#list").listview("refresh");
ArrayIndex.append(data[0]);
count ++;
}
function resetData(){
localStorage.removeItem("LocalData");
}
&#13;
答案 0 :(得分:0)
你在哪里宣布全球范围内的“计数”?您可以在两个单独的函数中引用它,但既不传递它们之间的值,也不将它作为全局变量,以便两个函数都引用相同的变量。你有这种方式,每次调用appendToList()函数时都要重新初始化var。
将它添加到文档的顶部(在函数闭包之外):
var count = 0;