gpt4 book ai didi

jquery - 使用 jQuery 和 AJAX 进行表单验证未正确设置变量

转载 作者:行者123 更新时间:2023-12-01 07:42:34 25 4
gpt4 key购买 nike

我正在使用 Javascript 和 jQuery 验证表单。

在验证函数结束时,我只是使用 AJAX 来检查 SQL 数据库中的条目以查看它是否已存在。我的工作正常,但我似乎无法更新 Javascript 变量来指示检查是否返回该条目存在或不存在。下面是验证函数的精简版本。

最后,当我执行 AJAX 调用(如果客户存在)时,我尝试将 isformcomplete 变量设置为 false,但这不起作用,几乎就好像它没有读取该行,如果没有正确设置,表单提交错误。

我在这里缺少什么? AJAX 调用工作正常。谢谢。

<form method="post" action="../../../scripts/create-customer.asp" id="create-customer" onsubmit="return create_customer();">

function create_customer()
{
var isformcomplete = true;
message = "The following tasks need to be completed before continuing:\n\n";
if ( $("#customerno").val() == "" )
{
message += "* Select the customer's country and enter its unique identifier\n";
isformcomplete = false;
}
if ( $("#product").val() == "" )
{
message += "* Select a product\n";
isformcomplete = false;
}

if (isformcomplete == false)
{ alert(message); }
else
{
$("#alertsDynamic").slideUp();
$.post("/global-marketing/scripts/check-new-customer.asp",{ fromsubmit: true, customer: $("#customerno").val()+"|"+$("#product").val()},
function(data, status)
{
if ( data == "true" )
{
$("#error-message").html($("#customerno").val()+" "+$("#product").val()+" already exists");
$("#alertsDynamic").slideDown();
isformcomplete = false;
}
}
);
}
return isformcomplete;

最佳答案

你应该在你的函数中始终返回 false

function create_customer()
{
message = "The following tasks need to be completed before continuing:\n\n";
if ( $("#customerno").val() == "" )
{
message += "* Select the customer's country and enter its unique
identifier\n";
isformcomplete = false;
}
if ( $("#product").val() == "" )
{
message += "* Select a product\n";
isformcomplete = false;
}

if (isformcomplete == false)
{ alert(message); }
else
{
$("#alertsDynamic").slideUp();
$.post("/global-marketing/scripts/check-new-customer.asp",{ fromsubmit: true, customer: $("#customerno").val()+"|"+$("#product").val()},
function(data, status)
{
if ( data == "true" )
{
$("#error-message").html($("#customerno").val()+" "+$("#product").val()+" already exists");
$("#alertsDynamic").slideDown();
// Here you need to send the form in case every thing is fine

}else{
$("form").submit();
}
}
);
}
return false;

关于jquery - 使用 jQuery 和 AJAX 进行表单验证未正确设置变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45328554/

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