javascript - 隐藏功能jquery不起作用

标签 javascript jquery

我有这段代码,用于在函数 valid_name 不为 true 时显示错误,并在模糊时 valid_name 变为 true 时隐藏错误; 错误显示在最初隐藏的 div 中。 错误出现但并没有消失。

function valid_name() {
    if (($("#name").length > 5) && ($("#name").length < 20)) {
        return true;
    } else {
        return false;
    }
}

 $(document).ready(function() {
    $('#name').on('blur', function() {
        if (!valid_name())
            $("#name_erors").text("invalid name").show();
        if (valid_name())
            $("#name_erors").hide();

    });
});

最佳答案

我认为

$("#name").length

应该

$("#name").val().length

原因 $('#name').length 对找到的元素进行计数,但要对其中的字符进行计数,需要使用

$("#name").val().length

所以函数应该是

function valid_name() {
    if (($("#name").val().length > 5) && ($("#name").val().length < 20)) {
        return true;
    } else {
        return false;
    }
}

你也可以这样做

function valid_name() {
    var value = $('#name').val(), len = value.length;
    return len > 5 && len < 40;
}

关于javascript - 隐藏功能jquery不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18596614/

相关文章:

javascript - 使用 Javascript 将查询结果的一部分传递到 session 变量中

javascript - wordpress 页面底部的 d3.js 图表渲染

javascript - 如何在 Sharrre 插件中隐藏总分享数?

javascript - 使用数组中的图像填充多个 div,且不重复

javascript - 在 Jquery 中动画后更改图像 Src

javascript - 当重新初始化 Jquery jScrollPane 时,它​​会回到顶部。为什么?

javascript - 根据 Jquery 中的选择选项更改按钮名称 =""和表单操作

javascript - 使用第三方应用程序构建我的网站文件

javascript - Opera 和 Chrome 浏览器中显示的 Div 之间的空间

JavaScript 无法在 azure ad b2c 自定义注册页面中运行