javascript - 如何在这里正确使用 isNaN?

标签 javascript forms background numbers

我有两个字段。第一个是名称字段,另一个是数字字段。我想检查数字字段是否为数字,如果不是,则将使用 select() 并且背景变为黄色而不是蓝色。不知何故,我没有得到我想要的。

window.onload=function()
{

idUser = document.getElementById("user");

document.getElementById("form").onsubmit=function()
{
    if(idUser.value == "")
    {
        alert("Username Required");
        idUser.focus();

        return false;
    }

birYear = document.getElementById("birthyear");

    if(isNaN(birYear))
    {
        birYear.select();
        alert("number");
        return false;
    }

}
}

我正在使用 alert("number"); 只是为了仔细检查它是否正确执行。我不需要警报,但不知何故,如果我以两种方式输入数字或文本,它只是警报数字,这意味着我没有做我想做的事情。

在此先感谢人们帮助我。

最佳答案

你必须获得值(value):

birYear = document.getElementById("birthyear").value;

document.getElementById("birthyear") 让您控制在 document.getElementById("birthyear").value 中给出该输入的值(或任何其他)控制..

isNan()是为了值(value)而不是控制....

编辑:

您可以通过更改样式来做到这一点:document.getElementById("birthyear").style.background-color = "yellow";

关于javascript - 如何在这里正确使用 isNaN?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15541434/

相关文章:

javascript - FeathersJS/Angular 4 中的身份验证

javascript - 如何在 Bioclipse javascript 编辑器中将字符串转换为输入流?

javascript - 将表单输入值设置为 ""不清除空格

java - 如何向 BIRT 报告添加背景文本或图像?

android - 在列表 fragment 中,第一次单击列表项不会更改项目的背景

android - 在 Android 中以编程方式删除背景可绘制对象

javascript - 如何在桌面浏览器上模拟移动设备陀螺仪(deviceorientation 事件)以进行调试?

javascript - jQuery Timepicker 和时间舍入问题

php - 如何保存在php中生成的html代码?

django - 动态设置复选框的初始值