【问题标题】:Storing information and retrieving it in javascript in a function with button在带有按钮的函数中存储信息并在 javascript 中检索信息
【发布时间】:2013-04-08 08:39:04
【问题描述】:

我已经制作了一个按钮,每次单击它时,它都会从我的输入框中获取一个值,然后将其减去并将其存储回输入框值。但我想做的是,将我的值存储到一个数组或任何我的按钮被点击的东西中。

例如,我想这样做, 余额 = 100 按钮被点击 余额现在是 90 而且我要 数组 [0] 有 100 数组 [1] 有 90 并且每次我希望它继续附加到数组但是当我输入我的按钮时。

我尝试了很多东西,每次它总是将值存储到数组 [0] 中并重写它

var clicktotal=0;
var array = [];
function myfunc(){
var Bal = document.getElementById("Bank_Balance");
var Balance = Bal.value
array[clicktotal]=Balance;
console.log(clicktotal+"My array click total "+array[clicktotal]);
}
clicktotal++;

看到我有这个并且函数中还有其他一些东西,但是 console.log 总是给我相同的数字而不增加我的变量,所以它仍然覆盖我的数组。

我的按钮看起来像这样

<input type="button" id="buy_things" value="Buy" style="width:55px; height:33px; color:#938CDD;" >

我的初始化函数是

var Buy_button = document.getElementById("buy_things");
                Buy_button.addEventListener ('click', myfunc ,true);

如果有任何想法,我对任何事情都持开放态度,我尝试过使用数组、本地存储和对象,但我似乎无法让它工作

【问题讨论】:

    标签: javascript arrays local-storage


    【解决方案1】:

    您需要将push 项目添加到数组中:

    array.push(Bal.value);
    

    你的myfunc被改写了:

    function myfunc(){
        var Bal = document.getElementById("Bank_Balance");
        array.push(Bal.value);
        console.log(array.length, "My array click total "+ Bal.value);
    }
    

    我意识到我上面重写的示例没有使用clicktotal,但是您上面的示例没有正确使用它。您声明了值为 0 的 clicktotal 变量,并且您只增加了一次。每次调用myfunc,它不会增加clicktotal,所以它保持为1,不管myfunc被调用了多少次。

    【讨论】:

    • 太棒了,谢谢我已经坚持了一段时间了,谢谢!!但是无论如何要从这个数组中获取值并在另一个函数中使用相同的值?在让用户出售商品之前,我需要使用相同的值并对其进行验证以检查它是否相同。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多