gpt4 book ai didi

jquery - .submit() 无法正常工作,unbind() 有帮助,但会带来副作用

转载 作者:行者123 更新时间:2023-12-01 03:50:58 25 4
gpt4 key购买 nike

将保持简短和甜蜜:

  • 用于在用户名可用的情况下创建新用户的表单(实际进入确认页面)
  • 如果名称不可用,表单将停止并显示错误消息
  • PHP 工作正常,并且在获取名称时表单会停止,但是输入有效用户名时需要单击两次提交,第一次单击不会执行任何操作,第二次单击会正常提交表单,因此除了必须点击两次

任何能够立即提交表单的帮助都会对我有很大帮助:)

代码实际上是有效的,除了用户名可用时它不会提交,注释掉的行允许它提交,但如前所述,只有在第二次单击提交按钮后才可以提交。

$(document).ready(function()
{

$(".f_create").submit(function()
{

var username = $(".userID").val();

$.ajax({
type: "POST",
url: "id_check.php",
data: "userID="+ username,
success: function(response){

if(response=="NO"){
$('.l_userID').append('<label class="format" style="color:blue">Nope</label>');
}
else if(response=="YES"){
// $(".f_create").unbind(); ..... submits the form but only on second click of submit button
$(".f_create").submit();

}

}

});

return false;

});

});

最佳答案

您可以在提交函数中定义可选参数。当您再次手动触发submit方法时,传递一个参数true来提交真实的表单。

$(".f_create").submit(function(e, explicitSubmit){ 
if (explicitsubmit) {
//If the flag is defined, cancel function.
return; //<-- Return. Form will be "normally" submitted.
} else {
// By default, prevent a submission
e.preventDefault();
}
var username = $(".userID").val();

$.ajax({
type: "POST",
url: "id_check.php",
data: "userID="+ username,
success: function(response) {
if (response == "NO") {
$('.l_userID').append('<label class="format" style="color:blue">Nope</label>');
}
else if (response == "YES") {
$(".f_create").trigger("submit", [/* explicitSubmit */true]);

}
}
});
});

关于jquery - .submit() 无法正常工作,unbind() 有帮助,但会带来副作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8688532/

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