2017-01-10 33 views
0

我试图将值存储到混合应用程序的本地存储中。当我在桌面Web浏览器中运行应用程序时,但是当我在Android设备上运行相同的应用程序时,我无法看到与Web浏览器中相同的输出。我认为它没有保存在本地存储中。如何为Cordova应用程序启用本地存储

有没有什么办法可以解决这个问题,还是我必须启用本地存储?

这里是我的代码:

function deductBalance(){ 
    var str; 
    var num_arr = []; 
    var elems = document.querySelectorAll('.cost-block-deduct'); 
    elems.forEach(function(el) { 
     var nums = el.options[el.selectedIndex].value; 
     num_arr.push(nums) 
    }); 
    console.log(num_arr); 
    var alvar1 = (Number.parseInt(num_arr.join(""))); 
    localStorage.setItem("deducted", alvar1); 
    window.location.href = "home.html" 
} 

function todaysExpenses(){ 
    document.getElementById("spent_points_today").innerHTML = localStorage.deducted ; 
    document.getElementById("earned_points_today").innerHTML = localStorage.balance; 
    document.getElementById("balance-remaining").innerHTML = localStorage.balance - localStorage.deducted; 
    document.getElementById("balance-remaining-month").innerHTML = localStorage.balance - localStorage.deducted; 
} 
+0

检查,如果本地存储由浏览器支持还是不支持。 try local2tool.setItem(“mod”,“do”); alert(localStorage.removeItem(mod)); (e){ } catch(e){ alert(“No”); } – developerCK

回答

1

你必须使用localStorage.getItem()功能

,或者的localStorage [ “扣除”]

function todaysExpenses(){ 
    var deducted = parseFloat(localStorage.getItem("deducted")); 
    var balance = parseFloat(localStorage.getItem("balance")); 
    document.getElementById("spent_points_today").innerHTML = deducted; 
    document.getElementById("earned_points_today").innerHTML = balance; 
    document.getElementById("balance-remaining").innerHTML = (balance - deducted); 
    document.getElementById("balance-remaining-month").innerHTML = (balance - deducted); 
} 
相关问题