JS表单提交验证、input(type=number) 去三角 刷新验证码
在进行表单提交时,需要对输入框和文本域等的value的合理性进行验证,可以编写form的onsubmit事件,代码,踩过的坑;注意点:
1、只有通过form里面的 <button type="submit" >
提交</button>进行表单的提交才会触发form的onsubmit事件,如果是通过button的onclick事件进行表单提交则不会触发form的onsubmit事件
2、 onsubmit事件的正确写法是:<form action="" method="post" onsubmit="return checkfrom();">
注意写上 return ,不写没有作用
function checkfrom(){ var username=$('#username').val(); alert(username); var pwd=$('#pwd').val(); if(username==null || username==""){ $('#codeinfo').html("请输入用户名"); $('#username').focus(); return false; }else if(pwd==null || pwd==""){ $('#codeinfo').html("请输入密码"); $('#pwd').focus(); return false; }else{ return true; } }
3、html5,input 提供很多新型的type,省去了我们写javascript正则表达式来限定输入值的类型的时间,比如,number,email,tel等等,表示需要输入合法的数字,邮箱,电话号码等。但是我发现将type设置为number之后,让它只接受数字的输入,会出现两个三角形,用于调整数字的大小(加1减1),
很明显,有些场合我们不需要它们,影响美观度,可利用以下方法将其去掉
<style type="text/css"> input::-webkit-outer-spin-button, input::-webkit-inner-spin-button{ -webkit-appearance: none !important; margin: 0; } input[type="number"]{-moz-appearance:textfield;} </style>
4、验证码是常常见到的小部件,获取验证码,点击刷新,应传递一个参数避免多次获取同一个验证码,这时候常常考虑时间戳或者随机数,此处采用随机数
<div class="form-group input-group"> <span class="input-group-addon" style="padding: 0px;"> <img alt="验证码" src="<%=basepath %>code/verifycode" title="看不清可点击刷新验证码" style="cursor:pointer;" onclick="this.src='<%=basepath %>code/verifycode?d='+math.random();"></span> <input type="number" class="form-control" id="code" placeholder="输入验证码" onblur="validatecode(this.value)"/> </div>
5、来个综合的代码吧
<style type="text/css"> input::-webkit-outer-spin-button, input::-webkit-inner-spin-button{ -webkit-appearance: none !important; margin: 0; } input[type="number"]{-moz-appearance:textfield;} </style> <script type="text/javascript"> function checkfrom(){ var username=$('#username').val(); alert(username); var pwd=$('#pwd').val(); if(username==null || username==""){ $('#codeinfo').html("请输入用户名"); $('#username').focus(); return false; }else if(pwd==null || pwd==""){ $('#codeinfo').html("请输入密码"); $('#pwd').focus(); return false; }else{ return true; } } </script>
form表单部分:
<form role="form" action="" method="post" onsubmit="return checkfrom();"> <hr /> <h5>enter details to login</h5> <br /> <div class="form-group input-group"> <span class="input-group-addon"><i class="fa fa-tag"></i></span> <input type="text" class="form-control" placeholder="your username " name="username" id="username" /> </div> <div class="form-group input-group"> <span class="input-group-addon"><i class="fa fa-lock"></i></span> <input type="password" class="form-control" placeholder="your password" name="pwd" id="pwd" /> </div> <div class="form-group input-group"> <span class="input-group-addon" style="padding: 0px;"> <img alt="验证码" src="获取验证码的url" title="看不清可点击刷新验证码" style="cursor:pointer;" onclick="this.src='获取验证码的url?d='+math.random();"></span> <input type="number" class="form-control" id="code" placeholder="输入验证码" onblur="validatecode(this.value)" /> </div> <div class="form-group input-group"> <span id="codeinfo" style="color: #f55"></span> </div> <div class="form-group"> <label class="checkbox-inline"> <input type="checkbox" /> remember me </label> <span class="pull-right"> <a href="index.html" rel="external nofollow" >forget password ? </a> </span> </div> <button type="submit" class="btn btn-primary ">login now</button> </form>
以上所述是小编给大家介绍的js表单提交验证、input(type=number) 去三角 刷新验证码,希望对大家有所帮助
上一篇: go嵌套匿名结构体的初始化详解
下一篇: PS怎么画一个原地蹲着的大黑猫?