SpringMVC+ExtJS 实现文本框内容的唯一性判断
来源:互联网 发布:费玉清网络综艺节目 编辑:程序博客网 时间:2024/06/05 04:04
在输入文本框中输入内容,但是要求输入内容必须是唯一的,不与数据库中已存在的数据重复。
java代码:
(1)在Biz中定义抽象方法validateGroupNameOrValue,然后在BizImpl层中重写此方法。
<span style="font-size:14px;">@Overridepublic int validateGroupNameOrValue(String groupName,Integer value){//根据从文本框获取的参数值判断值是否已存在String hql1="from UserGroup where 1=1 and groupName like '" + groupName + "'";String hql2="from UserGroup where 1=1 and value='" + value + "'"; //根据hql语句查询数据中相同值有多少个 int size1 = userGroupDao.findList(hql1).size();int size2 = userGroupDao.findList(hql2).size();if(size1 > 0 && size2 > 0){//分组名称与值同时不唯一return 1;}else if(size1 > 0 && size2 == 0){//分组名称不唯一,值唯一return 2;}else if(size1 == 0 && size2 > 0){//分组名称唯一,值不唯一return 3;}else{//分组名称和值均唯一return 0;}}</span>
(2)在controller.java中调用此方法
/*添加*/
<span style="font-size:14px;">@RequestMapping(value = "/add")public void add(String groupName,Integer value,String description,@RequestParam(value = "start", defaultValue = "0", required = false) int start,@RequestParam(value = "limit", defaultValue = "25", required = false) int limit,HttpServletRequest request, HttpServletResponse response) {JSONResult rets = new JSONResult(false, null);int result=userGroupBiz.validateGroupNameOrValue(groupName.trim(), value);//调用Biz中的方法先判断值是否已存在if(result==0){//当返回值为0时,说明数据库中没有所要添加的值,可以添加UserGroup userGroup=new UserGroup();userGroup.setGroupName(groupName);userGroup.setValue(value);userGroup.setDescription(description);this.outJson(response,userGroupBiz.add(userGroup));}else{ //当返回值不为0时,说明数据库中已有相同值存在if(result == 1){rets.setSuccess(false);rets.setMessage("用户分组名称和值已存在,请重新输入!");}else if(result == 2){rets.setSuccess(false);rets.setMessage("用户分组名称已存在,请重新输入!");}else if(result == 3){rets.setSuccess(false);rets.setMessage("值已存在,请重新输入!");}this.outJson(response, rets);}}</span>
(3)在使用ExtJS的view中的对应字段写一个自定义的验证事件validator
<span style="font-size:14px;">{id : 'groupNameId',fieldLabel : '用户分组名称',allowBlank : false,afterLabelTextTpl : PlatMap.redFlag,blankText : '用户分组名称不能为空',emptyText : '请输入用户分组名称',regex : /\S/,regexText : '用户分组名称不能为空',minLength : 2, // 允许输入的最少字符数minLengthText : "最小长度不能少于2个字符!",// 提示文本maxLength : 50,// 允许输入的最大字符数maxLengthText : "最大长度不能超过 50 个字符!",// 提示文本name : 'groupName',validationEvent : 'blur',validator : function(thisText) {var isGroupNameOK = true;// 先定义个全局变量var Mform = this.ownerCt.ownerCt;var groupNameValue = Mform.down('textfield[name=groupName]').getValue();var userGroup_Id = Mform.down('hiddenfield[name=userGroupId]').getValue();var value = 0;Ext.Ajax.request({url : '/base/userGroup/validateGroupName',method : 'POST',params : {userGroupId : userGroup_Id,groupName : groupNameValue,value : value},success : function(response) {var result = Ext.decode(response.responseText);if (!result.success) {isGroupNameOK = false;//此提示信息会显示在文本框后面,红色警告提示 Ext.getCmp('groupNameId').markInvalid("用户分组名称已存在,请重新输入!");} else {isGroupNameOK = true;Ext.getCmp('groupNameId').clearInvalid();}} });return isGroupNameOK;}}</span>
0 0
- SpringMVC+ExtJS 实现文本框内容的唯一性判断
- html的判断文本框内容举例
- 轮子----文本框内容不是唯一返回
- js实现文本框输入内容的相加
- ios判断输入的文本框de内容是否是汉字
- C#判断文本框内容是否空的写法
- JS判断文本框内容改变事件的简单实例
- iOS ---利用文本框的协议判断是否输入内容
- Extjs学习笔记<一>如何获得文本框输入的内容值
- 复制文本框的内容
- 文本框内容的滚动
- 判断最小生成树的唯一性
- HashSet判断唯一性的步骤
- 判断最小生成树的唯一性
- JS判断文本框输入的内容和长度 暂时支持性别/数字/有无/字符串的判断
- js实现复制文本框内容
- 用JQUERY实现清空所有文本框的内容
- 文本框输入内容提示消失的两种实现
- 指针的大小到底是由谁决定?是多少?(
- Voltdb CsvLoader 源代码分析
- 进程和线程(转载自廖雪峰的博客)
- While练习
- 软件盘会把原来的界面向上推解决方法
- SpringMVC+ExtJS 实现文本框内容的唯一性判断
- 集群无密码访问的两种方法
- Javascript中的Call方法讨论
- linux学习--rpm安装
- Android 异步消息处理机制 让你深入理解 Looper、Handler、Message三者关系
- LeetCode 120. Triangle
- 关于路径
- 在Windows中使用MinGW编译X264
- linux终端backspace不能删除字符的解决方案