jquery - 如何确保用户只输入一个名字?

标签 jquery input

我想确保用户准确输入一个名称(名字或姓氏,但不能同时输入或都没有),同时确保输入的名称长度超过 3 个字符。

我尝试过这样做,但是将其留空和使其多 2 个字符之间存在冲突。

这是我的代码:

if ($("#firstName").val().length > 0 && $("#lastName").val().length > 0) {
    event.preventDefault();
    $("#error").slideDown().text("You may enter just first name or last name");
    return;
} else if ($("#firstName").val().length <= 2 || $("#lastName").val().length <= 2) {
    event.preventDefault();
    $("#error").slideDown().text("Your name have to contain at least 3 letters");
    return;
}

fiddle 可以找到here

最佳答案

检查名称中是否存在空格。如果存在,则用户已输入全名

试试这个:

var name = $.trim($('#firstName').val());
if (name.length < 3 && name.indexOf(' ') > -1) {
    alert("Invalid Name; Enter first name or last name only");
}

关于jquery - 如何确保用户只输入一个名字?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29821306/

相关文章:

javascript - 为什么没有调用 Javascript 方法?

javascript - 选择文件后立即通过 AJAX 上传文件

html - 如何在css中使输入和选择宽度相同

javascript - 在 php 循环中单击复选框时将 1 添加到输入值

css - Firefox 不允许输入小数 [type=number]

c - 函数输出末尾的预期声明或语句

javascript - Fabricjs:用图像图案填充 svg

javascript - 如何在链接之前重新加载当前页面? Ajax

javascript - 处理垂直文本区域

angularjs - Angular 在输入中显示 NaN 值