无法在javascript中多次调用onclick函数

时间:2016-02-18 14:08:19

标签: javascript

我有这样的代码,点击一个按钮随机生成一些语句。它似乎适用于第一次点击,但其他只是没有任何东西。这段代码出了什么问题:

<p id="text"></p>
<button onclick="showAdvice()">Click</button>
<script>
    var advices = ["statement", "another", "other", "third"];
    var choose = Math.floor(Math.random() * advices.length);
    function showAdvice(){
        document.getElementById("text").innerHTML = advices[choose];
    }
</script>

1 个答案:

答案 0 :(得分:2)

你需要以这种方式声明函数:

function showAdvice(){
    var choose = Math.floor(Math.random() * advices.length);
    document.getElementById("text").innerHTML = advices[choose];
}

在你的情况下,“选择”只定义一次,每次调用showAdvice()都会返回相同的文本。