gpt4 book ai didi

javascript - 如何使用 jQuery 和 JavaScript 防止文本字段失去焦点?

转载 作者:太空狗 更新时间:2023-10-29 13:39:50 27 4
gpt4 key购买 nike

我有一个文本框 <input type="text"/>我想在失去焦点时验证。如果输入无效,我想阻止焦点移动到下一个元素,或者换句话说,将焦点保持在无效输入处直到它有效。

我如何使用 jQuery 和 JavaScript 做到这一点?

我试过这段代码,但它不起作用(jsFiddle):

<!DOCTYPE html>
<html>
<head>
<script src="jquery-1.6.2.min.js"></script>
<script>
$(function() {
$('.hello').bind('focusout', function(e) {
if(!isValid($(this).val())) {
e.preventDefault();
$(this).foucus();
}
});
});

function isValid(str) {
if(str === "hello") {
return true;
} else {
return false;
}
}
</script>
</head>
<body>
Only valid content: <b>hello</b><br>
<input type="text" class="hello"/>
<button>Dummy</button>
</body>
</html>

最佳答案

这只是一个错字。变化:

$(this).foucus();

收件人:

$(this).focus();

此外,您可能还希望通过在文本框上调用 select 来让您的用户更容易更正他们的错误。这样,他们就可以再次开始键入以更改值:

$(this).focus().select();

这是一个working example .


注意:这个答案解决了手头的问题,即被问到的问题。在更广泛的范围内,我同意其他人的说法,即不应将用户锁定在某个字段中。一个更好的方法是在提交时验证整个表单,让用户看到所有问题并立即修复它们,而不是在整个过程中窃听它们。

关于javascript - 如何使用 jQuery 和 JavaScript 防止文本字段失去焦点?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7626319/

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