gpt4 book ai didi

javascript - 防止默认后重新启用提交

转载 作者:数据小太阳 更新时间:2023-10-29 04:31:24 26 4
gpt4 key购买 nike

我正在尝试取消绑定(bind)或重新启用防止默认设置,以便我的表单将提交正确的数据。

我已经尝试了多个示例。这是我的代码和我尝试过的一些示例。

这段代码非常适合我想要的。最后一件事是重置 div,在我得到它之后我可以实现它。

function lengthRestriction(elem, min, max) {
var uInput = elem.value;
if (uInput.length >= min && uInput.length <= max) {
return true;
} else {
var cnt = document.getElementById('field');
cnt.innerHTML = "Please enter between " + min + " and " + max + " characters";
elem.focus();
$('#ShoutTweet').submit(function(e) {
e.preventDefault();

//bind('#ShoutTweet').submit();
//$('#ShoutTweet').trigger('submit');
});
}
}​

我也设置了一个jsbin http://jsbin.com/ebedab/93

最佳答案

不要尝试在验证函数中设置和取消提交处理程序,相反:从单个提交处理程序中调用验证,并且只调用 .preventDefault()如果验证失败:

$(document).ready(function() {

$('#ShoutTweet').submit(function(e) {
if (/* do validations here, and if any of them fail... */) {
e.preventDefault();
}
});

});

如果您的所有验证都通过了,就不要调用 e.preventDefault(),提交事件将默认发生。

或者,您可以从提交处理程序返回 false 以防止出现默认情况:

    $('#ShoutTweet').submit(function(e) {
if (!someValidation())
return false;

if (!secondValidation())
return false;

if (someTestVariable != "somevalue")
return false;

// etc.
});

关于javascript - 防止默认后重新启用提交,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9856942/

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