一种在客户端利用js实现对数据校验的方法
来源:互联网 发布:鞋子淘宝 编辑:程序博客网 时间:2024/05/18 19:42
通常为了减轻服务器端的压力会在客户端利用js或其他脚本对用户填写的需要提交的数据进行校验,同时也会带来用户体验的提升。下面介绍一种在客户端利用js实现对数据进行校验的方法,仅供参考。
现在假设用户需要在客户端通过后台进行对产品类别的添加操作,利用js实现对产品类别的校验,校验规则为:产品的添加只能在所属类别的叶子节点下进行。
产品类别在添加页面通过一个下拉框来展现,现在需要做的就是在用户进行产品添加操作选择产品类别时对产品类别进行校验,保证用户所选的产品类别不能为非叶子节点,当用户所选的产品类别为非叶子节点时,对用户进行提醒。
产品类别展现关键代码如下:
< form action = "productadd.jsp" method = "post" onsubmit = "return checkdata()" name = "form">
....
< select name ="categoryid" >
< option value ="0" > 所有类别</ option >
< script type = "text/javascript" >
arrLeaf[0]= "noleaf" ;//默认显示的所有类别标记为非叶子节点
</ script>
<%
int index=1;
List<Category> categories=Category.getCategories();//获取所有类别
for (Iterator<Category> it=categories.iterator();it.hasNext(); ){
Category c=it.next();//通过循环取出每个类别
%>
< script type = "text/javascript" >
arrLeaf[' <%= index%> ']=' <%=c.isLeaf()? "leaf" :"noleaf" %> ';
//通过定义的isLeaf()方法在服务器端加载类别时判断所取到的类别是否为叶子节点,若为叶子节点将
//arrLeaf[index]赋值为:leaf;若为非叶子节点,则将arrLeaf[index]赋值为:noleaf。
</ script>
< option value =" <%= c.getId() %> "
<%= c.getId()==categoryId?"selected" :"" %> > <%=c.getName() %> </option >
<%
index++;
}
%>
</ select>
....
</ form >
对应的js处理函数checkdata()定义如下:
< script type ="text/javascript" >
<!--
var arrLeaf= new Array();//定义一个arrLeaf数组用于记录每个类别是否为叶子节点
function checkdata(){
if (arrLeaf[document.form.categoryid.selectedIndex]!= "leaf"){
//判断所选中的类别是否为叶子节点,若不为叶子节点,则进行提示。
alert( "不能选择非叶子节点" );
document.form.categoryid.focus();
return false ;
}
return true ;
}
-->
</ script>
类别类定义如下:
public class Category {
private int id ;
private int pid ;
private String name ;
private String descr ;
private boolean leaf ;//是否为叶子节点
private int grade ;
....
}
产品类定义如下:
public class Product {
private int id ;
private String name ;
private String descr ;
private double normalPrice ;
private double memberPrice ;
private Timestamp pdate ;
private int categoryId ;//该字段参考Category的id字段
.....
}
- 一种在客户端利用js实现对数据校验的方法
- Oracle FORM Bulider 校验多行多列数据重复的一种方法
- 客户端数据校验的通用解决之道----妙用自定义属性 (JS)
- 一种CRC校验的方法
- 利用js获取客户端ip的方法
- 一种利用js实现的仿淘宝商品评价功能的方法
- Excel模板强制对拷贝数据进行校验的实现方法
- struts2使用validate方法来实现对表单输入数据的校验操作
- 一种利用ajax js与php实现数据库动态查询的方法
- 利用存储过程实现交叉表格式数据查询的一种通用方法
- 客户端缓存某些重要用户输入数据的一种方法
- Android客户端和服务器端数据交互的第一种方法
- 一种客户端即时通信数据的加密和解密方法
- 实现数据权限控制的一种方法
- 在客户端能够对提交的数据安全管理的常用方法
- Binding对数据的校验
- 一种基于流水线的视频文件校验方法
- js 在客户端操作文件的方法
- 2014找工之递归一类问题
- ZOJ3733 Skycity
- 如何把int类型的数值转变成String字符串的类型。
- 在android、网页等获取linux 平台下的dlna dmp的中文名字乱码
- poj1182 食物链
- 一种在客户端利用js实现对数据校验的方法
- 802.11 学习笔记
- java当中equals函数的作用小结
- 1083 Cantor表 (维基oi)
- HDU 2027 - 统计元音
- libevent入门教程:Echo Server based on libevent
- 一个Java内部类引发的FindNoClass错误
- win7 odbc数据源配置
- 如何把两个数组进行合并,并删除它们的相同元素