Javascript:如何在按钮单击时显示下一个数组值

时间:2014-10-03 21:23:03

标签: javascript jquery html arrays button

我正在尝试用javascript / jquery和html编写代码,我认为这些代码相当简单,但事实证明(对我而言)非常具有挑战性。我有一个程序,它计算斐波纳契数列的前x个数,并将其存储在一个数组中。我要做的是制作两个按钮,显示序列中的下一个或上一个数字。这是我到目前为止所做的。

Javascript:

var all = new Array();
fib = function (numMax) {
    for (i = 0, j = 1, k = 0; k < numMax; i = j, j = x, k++) {
        x = i + j;
        //window.document.write(x + " ");
        all[k] = x;
    }
};

fib(1000);

fibon = function () {
    getElementById("mynum").innerHTML = "all[+1]";
};

HTML:

<input type="text" id="mynum">
<button onclick="fibon();">Next</button>

1 个答案:

答案 0 :(得分:4)

您需要一个包含当前索引的变量,然后在每次单击时递增它。

fibindex = 0;

function fibon() {
    if (fibindex >= all.count) {
        document.getElementById("mynum").value = "We've run out of Fibonacci numbers";
    } else {
        document.getElementById("mynum").value = all[fibindex];
        fibindex++;
    }
}

另外,请注意,不应该使用变量来引用引号。添加您使用.value填写输入,而不是.innerHTML

DEMO