gpt4 book ai didi

javascript - 即使返回 false,jQuery 也会刷新页面

转载 作者:行者123 更新时间:2023-11-30 14:30:32 24 4
gpt4 key购买 nike

$("#submit").click(function()
{
function checkZeros()
{
if ([0] == 0) {
if ([1] != '.') {
alert("alert message");
return false;
}
}
}

checkZeros($("#user-input-currency").val());

if(!$.isNumeric($("#user-input-currency").val())) {
alert("Please provide price in numeric value");
return false;
}
})

我有一个函数可以检查用户输入货币的第一个数字是否为 0,后跟“.”。如果没有则发出警报,并返回 false 以便用户可以输入正确的值。但就我而言,我收到了警报消息,但页面仍然刷新。这里可能是什么问题?下一个检查 isNumeric 是否正常工作的代码返回警告消息并且不刷新页面。

最佳答案

您的return 与您的点击处理程序在另一个范围内,因此即使checkZeros 返回false,您的点击处理程序也不会停止。

您可以改用以下内容:

if(checkZeros($("#user-input-currency").val() === false)) return false;

此处使用严格比较,因为您的函数没有返回 true,并且函数默认返回 undefined

为了更好的可读性,你可以改变你的函数,让它总是返回一个 bool 值,并将你的 if 简化为:

if(checkZeros($("#user-input-currency"))) return false;

p.s.:你的代码没有意义,是伪代码吗?

关于javascript - 即使返回 false,jQuery 也会刷新页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51266378/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com