js表单序列化判断空值的实例
作者:Mr-Cuba 发布时间:2024-04-22 13:01:15
标签:js,表单序列化,空值
学习javaweb的时候,做了将页面上的的表单信息添加到数据库中的练习。提交表单的时候,需要保证每个输入框、单选按钮、复选框等都不为空,刚开始的时候挨个获取控件的值进行判断是否为空,后来认识了表单序列化这么一个方法,就是了下用序列化来判断空值
//form表单页面
<form id="basicInfo" action="EmployeeServlet?flag=addEmployeeInfo" method="post">
<div class="formbody">
<div class="formtitle"><span>基本信息</span></div>
<ul class="forminfo">
<li>
<label>员工账号</label>
<input id="account" name="account" type="text" class="dfinput" readOnly="true" />
<i>设置员工姓名和入职时间后,系统自动生成,无法更改</i>
</li>
<li>
<label>员工姓名</label>
<input name="name" type="text" class="dfinput" id="name" />
<i>姓名不能为数字</i>
</li>
<li>
<label>密码</label>
<input name="password" type="password" class="dfinput" id="pwd" placeholder="空值或空白则默认密码为123456" />
<i></i>
</li>
<li>
<label>性别</label>
<cite>
<input name="gender" type="radio" value="男" checked="checked" />男
<input name="gender" type="radio" value="女" />女
</cite>
</li>
<li>
<label>生日</label>
<input id="birth" name="birthday" type="text" class="dfinput" placeholder="格式:yyyy-mm-dd"/>
<i id = "birthTip"></i>
</li>
<li>
<label>手机号码</label>
<input id="phone" name="telephone" type="text" class="dfinput" />
<i id = "phoneTip"></i>
</li>
<li>
<label>邮箱</label>
<input id="email" name="email" type="text" class="dfinput" />
<i id = "emailTip"></i>
</li>
<li>
<label>地址</label>
<input name="address" type="text" class="dfinput" />
<i id = "addressTip"></i>
</li>
<li>
<label>所属部门</label>
<select id="dept" class="dfinput" name="dept">
</select>
</li>
<li>
<label>入职时间</label>
<input id="entrytime" name="entrytime" type="text" class="dfinput" placeholder="格式:yyyy-mm-dd" />
<i id = "timeTip"></i>
</li>
<li>
<label>员工状态</label>
<select id="empstate" class="dfinput" name="empstate">
</select>
</li>
<li>
<label>直属上级</label>
<input id="superior" name="superior" type="text" class="dfinput" placeholder="直属上级员工id" />
<i id = "superTip"></i>
</li>
<li>
<label>职务</label>
<select id="dutyid" class="dfinput" name="dutyid">
</select>
</li>
<li>
<label>角色权限</label>
<select id="authority" class="dfinput" name="authority">
</select>
</li>
<li>
<label> </label>
<input id="savebtn" type="submit" class="btn" value="确认保存"/>
</li>
</ul>
</div>
</form>
在外链js文件中写了个提交时触发的事件
$('form').submit(function(){
//当密码为空的时候自动赋值
var pwd = $('#pwd').val();
if(pwd==null || pwd == ''){
$('#pwd').val('123456');
}
var data = $('form').serialize();
//表单序列化后返回一个字符串 如:account=123&password=1234&sex=&dept=2
var array = data.split('&');
//把字符串按&号分隔成数组 得到 {account=123,password=1234,sex=,dept=2} 字符串数组
for(var i = 0;i < array.length; i++){
var kwarr = array[i].split('=');
//循环将数组中的每个子元素字符串用=号分隔成数组 {account,123} {sex,} 然后判断索引为1的子元素是否存在或为‘' 从而达到了表单判空的目的
if(kwarr[1]===null || kwarr[1] ===''){
alert('除密码外不能存在空值');
return false;
}
}
});
如果大家想了解更多游戏活动与游戏攻略,请持续关注本站,本站小编将在第一时间为大家带来最好看、最好玩、最新鲜的游戏资讯。更多精彩内容,尽在jb51游戏频道!
来源:http://www.cnblogs.com/Cuba236/archive/2017/09/22/7573056.html


猜你喜欢
- 这篇文章主要介绍了Python enumerate函数遍历数据对象组合过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定
- 小毅的blog:http://andymao.com/andy/注:本文实例在IE5.x下可能会显示不出来,请使用IE6、IE7、Firef
- 最近在做人脸识别清洗样本的工作,发现经过人脸对齐后存在部分图片十分模糊,所以用opencv滤了一下。原理就是使用了cv2.Laplacian
- 聚集索引,数据实际上是按顺序存储的,数据页就在索引页上。就好像参考手册将所有主题按顺序编排一样。一旦找到了所要搜索的数据,就完成了这次搜索,
- 本文将演示在本地的 python 项目中调用 ChatGPT 模型。写在前面作为一名程序员,在开发过程当中时常需要使用 ChatGPT 来完
- SQL2005的存储过程: set ANSI_NULLS ON set QUOTED_IDENTIFIER ON go ALTER PROC
- 需求一般Django开发为了保障避免 csrf 的攻击,如果使用Django的模板渲染页面,那么则可以在请求中渲染设置一个csrftoken
- 本文讲述了Python检测网络延迟的代码。分享给大家供大家参考,具体如下:#!/usr/bin/env python # coding: u
- 本文实例为大家分享了python字典操作实例的具体代码,供大家参考,具体内容如下#!/usr/bin/env python3# -*- co
- 一、创建堆heapq有两种方式创建堆, 一种是使用一个空列表,然后使用heapq.heappush()函数把值加入堆中,另外一种就是使用he
- 1 什么是注释注释就是对代码的解释和说明,其目的是让人们能够更加轻松地了解代码。注释是编写程序时,写程序的人给一个语句、程序段、函数等的解释
- 看代码~from django.contrib import messages messages.info(request, '要显
- Python list append方法给列表追加元素描述append函数可以在列表的末尾添加新的对象。函数无返回值,但是会修改列表。语法l
- 一、问题描述当用JS调用form的方法submit直接提交form的时候,submit事件不响应。为什么?知道的请回复。类比一下,我用inp
- 简介CountVectorizer官方文档。将一个文档集合向量化为为一个计数矩阵。如果不提供一个先验字典,不使用分析器做某种特征选择,那么特
- 一段这样的JavaScript代码,猜猜结果如何?var i = 0, m =
- 定义计算N的阶乘的函数1)使用循环计算阶乘def frac(n): r = 1 if n<=1:
- 在日常工作中,PPT制作是常见的工作,如果制作创意类PPT,则无法通过自动化的形式生成,因为创意本身具有随机性,而自动化解决的是重复性工作,
- 1 re.match 说明re.match() 从开始位置开始往后查找,返回第一个符合规则的对象,如果开始位置不符合匹配队形则返
- vue阻止页面回退的方法如何阻止页面回退?VUE中跳转页面后,阻止返回的方法有很多种,这里就不一一列举,我是用vue-prevent-bro