我正在尝试使用jQuery和AJAX来验证用户是否在特定字段中输入了一个数字,并且他们没有将其留空,并且我对为什么我似乎可以做到这一点有些困惑,但是不会。
我在jQuery change()
函数中执行此操作,因此只要他们更改该字段中的值,它就会在数据库中更新它而无需刷新整个页面,并且在我尝试使用{{之前1}}进行验证。
我将他们的输入保存到名为isNull()
的变量中,然后首先检查以确保它是一个数字:
UserInput
效果很好。我也在尝试使用以下方法检查并确保它不为空:
if (!isNaN(UserInput))
Intellisense像if (isNull(UserInput))
一样为我完成了isNull()
,并且在Visual Studio中都很好地显示了,并且编译时没有错误。我在这里也尝试过isNaN()
,但结果类似,intellisense为我完成了它,一切似乎都很好。直到我更改字段中的值,这时它立即给我这个错误:
JavaScript运行时错误:'isNull'未定义。
我不确定为什么未定义(特别是因为intellisense为我完成了它)或如何定义它。
我还尝试了此操作,因为它似乎涵盖了所有基础,而不仅仅是isNullOrUndefined()
:
https://stackoverflow.com/a/5515349/8767826
然后我在isNull()
内放了alert()
,但没有收到错误消息,但我的警报也没有触发。
最终目标是在客户端离开时将其更改为零,而将其留为空白。
无论如何,我很沮丧,我感谢任何人都能提供的帮助。
谢谢
答案 0 :(得分:1)
不需要isNull
函数;你可以检查
if (UserInput === null)
isNaN
之所以存在,是因为NaN
与JavaScript中的其他所有值不同,都不等于其自身。
但是null
并不意味着该字段为空!如果该字段为空白,则其值为空字符串。改为进行检查:
if (UserInput === '')