jQuery   发布时间:2022-03-30  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了如何使用jQuery和JavaScript防止文本域失去焦点?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个textfield< 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.

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

大佬总结

以上是大佬教程为你收集整理的如何使用jQuery和JavaScript防止文本域失去焦点?全部内容,希望文章能够帮你解决如何使用jQuery和JavaScript防止文本域失去焦点?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。