如果我含糊不清,请原谅我,这是我的第一篇文章,并且是JavaScript的新手,实际上是在几周前开始的。

我正在我的网站上上学,由于某种原因,即使被调用,警报窗口也不会弹出。我可能错过了明显的情况,但现在是凌晨4点,我已经做作业四个小时,而五个小时前我刚轮班8个小时,我很想睡觉。
无论如何,我都会张贴与代码和错误有关的所有内容,并会检查我何时醒来(大约从现在开始6到7个小时)。
我也为此使用Notepad ++和Chrome。
同样要澄清的是,除了没有弹出错误窗口外,其他所有东西都可以正常工作。我相信检查数字的isNan很好,但是我还是JavaScript新手,所以可能不是。这些是我的两个最大问题,isNan和警报窗口没有弹出。
同样,当我单击按钮将两个数字加在一起(这是一个非常简单的程序,用户输入的数字加上9.99装运变量)时,它将在第二个文本框中输出该数字。但是,如果我输入“ asdas”或字母,而不是弹出警告窗口,第二个文本框将返回“ Nan”。

编辑此内容后,我不妨将网站扔掉(我希望这是我的学生网站,不要担心被黑客入侵)。
它还具有所有更新的数据。
https://wheeloftimestory.000webhostapp.com/

我不想发布巨大的index.html,因为有很多标记尚未移到.js文件,因此看起来很糟糕。如果这还不够,我将尝试更新它。

这是我的index.html的一部分

    <script src = "ft.js"></script>
<form id="inputform">
<input name="firstnum" type ="text" size="6"> $ <input name="btn1" type="text" size="6">
<input name="btn2" type="button" value = "Calculate Cost" onclick="addNum(firstnum.value); verifyNum()">
</form>


这是我的js.cs文件:

function addNum(n1)
{
    var num1 = parseFloat(n1);
    var shipping = 9.99;

    finalNum = num1 + shipping;

    inputform.btn1.value = finalNum.toFixed(2); //rounds the decimal place to 2!
}

function verifyNum(n1) {

    if (isNan(num1.value))
    {
        alert("Please make sure there's no alphabetical letters.");
        return false;
    }
}

最佳答案

我将isNan更改为isNaN(n1),KenH是正确的。我的问题解决了:)感谢所有发表评论的人。

关于javascript - 在HTML中调用Alert(“”)时无法正常工作吗?也使用isNan验证float,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43183901/

10-13 00:18