JavaScript 运行时错误 : '[MethodName]' is undefined

标签 javascript jquery ajax

我正在尝试使用 jQuery 和 AJAX 来验证用户是否在特定字段中输入了数字,并且他们没有将其留空,我有点困惑为什么我可以这样做,但是不是另一个。

我在 jQuery change() 函数中执行此操作,因此每当他们更改该字段中的值时,它都会在数据库中更新它,而无需刷新整个页面,并且它可以正常工作,直到我尝试使用 isNull() 进行验证。

我将他们的输入保存到一个名为 UserInput 的变量中,并首先检查以确保它是一个数字:

if (!isNaN(UserInput))

效果很好。我还尝试使用以下方法检查并确保它不为空:

if (isNull(UserInput))

Intellisense 为我完成了 isNull(),就像它为 isNaN() 所做的那样,并且所有内容在 Visual Studio 中都显示良好,编译时没有错误。我也在这里尝试了 isNullOrUndefine() ,得到了类似的结果,智能感知为我完成了它,一切看起来都很好。直到我更改字段中的值,此时它立即给出此错误:

JavaScript 运行时错误:“isNull”未定义。

我不确定为什么它未定义(特别是因为智能感知正在为我完成它)或如何定义它。

我也尝试过这个,因为它似乎涵盖了所有基础,而不仅仅是 isNull():

https://stackoverflow.com/a/5515349/8767826

我在 if 中放入了 alert() ,但没有收到错误,但我的警报也没有触发。

最终目标是在客户端离开时将其更改为零,请将其留空。

无论如何,我有点困惑,我感谢任何人可以提供的帮助。

谢谢

最佳答案

不需要 isNull 函数;你可以检查一下

if (UserInput === null)

isNaN 之所以存在,是因为 NaN 与 JavaScript 中的所有其他值不同,它不等于其自身。

但是null并不意味着该字段为空!如果该字段为空,则其值将为空字符串。检查一下:

if (UserInput === '')

关于JavaScript 运行时错误 : '[MethodName]' is undefined,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52977472/

相关文章:

javascript - 在另一个回调中运行 jQuery 函数时出现问题

javascript - 使用 Javascript 显示和隐藏 div

javascript - 用单个值填充 Uint16Array 的最快方法

javascript - 模型没有被插入 backbonejs 的集合

asp.net - Microsoft AJAX 和 AJAX Pro 有什么区别?

javascript - JQuery find and closest 无法找到最近的输入字段

javascript - 防止jquery被多次引用?

javascript - 超链接中的当前页面 URL

javascript - 从 Web 服务返回对象到 Ajax 请求成功回调函数

jquery - 在 Rails 中加载表单后调用 JavaScript 函数