首页 新闻 搜索 专区 学院

在javascript中应该如何解决这两个问题

0
悬赏园豆:60 [已解决问题] 解决于 2018-10-24 11:56

3,新建一个表单,表单中有用户名和密码,当用户名失去焦点时,判断用户名长度是否大于3位,当密码框失去时,判断密码是否为非数字。

4,在3题基础上,当点击提交按钮时,判断用户名或密码是否满足条件(用户名大于三位,密码非数字),如不满足,则得到输入框的焦点(使用focus())。

xxy12的主页 xxy12 | 初学一级 | 园豆:124
提问于:2018-10-23 18:14
< >
分享
最佳答案
0

function Unameblur() //用户名框调用这个方法
{
var txtuname=$('用户名').val();
if(txtuname==““ || txtuname.length<3)
{
alert("用户名长度不能小于3位")
$('用户名').focus();
}
}

function Pwdblur() //密码框调用这个方法
{
var txtpwd=$('密码').val();
if(txtpwd=“” || isNaN(txtpwd))
{
alert("请输入数字")
$('密码').focus();
}
}

这样提交时只需验证是否为空即可。 这是最基本的写法

收获园豆:60
.NET_海 | 菜鸟二级 |园豆:480 | 2018-10-23 18:26

写不出来

xxy12 | 园豆:124 (初学一级) | 2018-10-24 11:55

@xxy12: 什么写不出来?

.NET_海 | 园豆:480 (菜鸟二级) | 2018-10-24 13:12
其他回答(1)
0

在第一个条件里;
txtuname.length<3了包含txtuname==“”;
所以只用写txtuname.length<3即可;
第二个条件;
获取的txtpwd是字符串,建议用正则
解决方法:正则表达式:
if(!/^\d+$/.test(str)){ ///^\d+$/.test(str)代表从开始到结束都是数字,且至少匹配一次;满足返回true,不满足
返回false,加个!,正好相反,就满足了
alert("请输入数字")
$('密码').focus();
}

心悠魂然 | 园豆:2087 (老鸟四级) | 2018-10-24 09:33
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册