Javascript函数调用表示未定义但函数已定义

时间:2013-09-28 01:15:41

标签: javascript jquery html function undefined

在我的html中,我有以下函数调用

<input value="Roll" onclick="roll()" type="button">

应该调用之前定义如下的函数roll()

    <head>
    <script language="javascript">
    // roll function
    // roll button pressed to roll the die and update as needed
    function roll(){
        wintotal = document.JForm.totalpoints.value;    
        var validate = Validate();
        var p1total = document.JForm.p1turn.value;
        var p2total = document.JForm.p2turn.value;

        var dienumber = Math.floor(Math.random() * (6 - 1 +1)) + 1;

        if (validate){  
            // put together image for die graphic that was rolled
            document.getElementById("dice").innerHTML = '<img src="die_face_'+dienumber+'.png"/>';


        }
        else if (validate == 0){
            document.getElementById("message").innerHTML ="ERROR: Play to points not in range";
        }
        else{
            document.getElementById("message").innerHTML ="ERROR: Play to points not in valid integer";
        }
    }  // end roll function
    </script>
</head><body>

然而,当我点击HTML页面的按钮时,我收到一条错误,指出roll未定义,即使它已在上面明确定义,任何人都有任何想法?

1 个答案:

答案 0 :(得分:1)

我试过那段代码,就像你说的那样。然后我删除了验证的东西,现在它正常工作。你需要什么?为什么?发布的示例并不是很清楚!

我已将此作为评论撰写,但我没有足够的声誉...... :(

编辑:就像我在评论中说的,如果问题只是检查值是否为整数,则可以实现此功能。

function isInt(n)
{
    return n % 1 === 0;
}