jquery struts 验证唯一标识(公用方法)


Posted in Javascript onMarch 27, 2013

步骤一 引入js文件

<script language="javascript1.2" src="<s:url value="/js/jquery.js" includeParams="false"/>"></script> 
<script language="javascript1.2" src="<s:url value="/js/dictionary.js" includeParams="false"/>"></script>

步骤二 公用js文件 dictionary.js
/** 
*↓↓↓↓↓↓↓↓↓↓ 
*作者:ZhuangZi 
*类名:公用方法初始化 
*功能:公用方法初始化 
*详细:公用方法初始化 
*版本:1.0 
*日期:2013-03-22 
*说明: 
*↑↑↑↑↑↑↑↑↑↑ 
*/ 
$(function(){ 
/*1.失去焦点验证↓↓↓*/ 
$("#code").blur(callback);//1.code就是你要验证的唯一标志的控件ID 2.你控件后面必须要有个接收错误信息的控件 
/*2.提交时候验证↓↓↓*/ 
$("#submit").click(callback);//你页面的提交按钮ID 
}); 
/** 
*↓↓↓↓↓↓↓↓↓↓ 
*作者:ZhuangZi 
*类名:验证唯一标识公用方法 
*功能:唯一验证 
*详细:唯一标识ID和提交按钮ID要和下面保持一致 
*版本:1.0 
*日期:2013-03-22 
*说明: 
*↑↑↑↑↑↑↑↑↑↑ 
*/ 
function callback() { 
var slef=$("#code"); 
var code=slef.val(); 
var submit=$("#submit"); 
var flag=$("#flag").val(); 
if(null==code||""==code){ 
slef.next().html("下载包标识不能为空!"); 
submit.attr("disabled",true); 
return; 
}else{ 
if(!code.match("^\\w+$")){ 
slef.next().html("标识由数字母或下划线组成!"); 
return ; 
} 
slef.next().html("*"); 
} 
$.ajax({ 
type:'post', 
url:'../dictionary/checkCodeOnly.do', 
data:'bean.code='+code+'&bean.flag='+flag, 
dataType:'json', 
success:function(json){ 
if(json>0){ 
slef.next().html("此标识已存在!"); 
submit.attr("disabled",true); 
return ; 
}else{ 
slef.next().html(""); 
if(code != null && code!=""){ 
submit.attr("disabled",false); 
}else{ 
submit.attr("disabled",true); 
return; 
} 
} 
}, 
error:function(){ 
alert('验证信息出错'); 
} 
}); 
}

步骤三 页面部分
   <s:hidden id="flag" value="3"/> <!-flag 什么类型的标志-> 
<tr> 
                   <td width="40%" height="33" class="addtabletd1">下载标识:</td> 
                   <td width="60%" height="33" class="addtabletd2"><div align="left"> 
                   <s:textfield id="code" name="yhaoPortalsDownBean.downFlag" cssClass="textfrom" cssStyle="width:150px;"  maxlength="200"/> 
                  <font id="codeInfo" color="red">*</font> 
                   </div></td> 
                 </tr>

步骤四 action里的方法
/** 
* 
* @author ZhuangZi 
* @class com.hzdracom.action.YhaoPortalsDictionaryAction 
* @method checkCodeOnly 
* @Directions 验证唯一标识公用方法 
* @date 2013-3-21上午10:09:04 void 
*/ 
public void checkCodeOnly(){ 
String json=""; 
try{ 
json = String.valueOf(yhaoDictionaryService.checkCodeOnly(bean)); 
json=JSON.toJSONString(json); 
System.out.println("json=="+json); 
HttpServletResponse response=ServletActionContext.getResponse(); 
response.setContentType("text/html"); 
response.setCharacterEncoding("utf-8"); 
PrintWriter out; 
out = response.getWriter(); 
out.println(json); 
out.flush(); 
out.close(); 
}catch(Exception e){ 
e.printStackTrace(); 
} 
}

步骤五 dao里的方法
<PRE class=java name="code"> public int checkCodeOnly(DictionaryBean bean)throws DataAccessException,Exception { 
Object[] sqlParams = new Object[4]; 
int index = 0; 
String sql=""; 
/* 验证页面标志是否唯一*/ 
if (bean.getFlag().equals("1")) { 
sql = "select count(1) from YHAO_PORTALS_PAGE where PAGE_FLAG = ? "; 
sqlParams[index]=bean.getCode(); 
index++; 
} 
/* 验证类型志标识是否唯一*/ 
if (bean.getFlag().equals("2")) { 
sql = "select count(1) from YHAO_PORTALS_DOWNTYPE where DOWNTYPE_FLAG = ? "; 
sqlParams[index]=bean.getCode(); 
index++; 
} 
/* 验证下载志标识是否唯一*/ 
if (bean.getFlag().equals("3")) { 
sql = "select count(1) from YHAO_PORTALS_DOWN where DOWN_FLAG = ? "; 
sqlParams[index]=bean.getCode(); 
index++; 
} 
if (bean.getFlag().equals("4")) { 
sql = "select count(1) from YHAO_PORTALS_KUAI where KUAI_FLAG = ? "; 
sqlParams[index]=bean.getCode(); 
index++; 
} 
Object[] sqlParamsEnd = new Object[index]; 
System.arraycopy(sqlParams, 0, sqlParamsEnd, 0, index); 
int count = this.queryForInt(sql,sqlParamsEnd); 
return count; 
}</PRE> 
<PRE></PRE>
Javascript 相关文章推荐
需要做特殊处理的DOM元素属性的访问
Nov 05 Javascript
AJAX 网页保留浏览器前进后退等功能
Feb 12 Javascript
js 设置缓存及获取设置的缓存
May 08 Javascript
JS生成不重复随机数组的函数代码
Jun 10 Javascript
最简单的JavaScript图片轮播代码(两种方法)
Dec 18 Javascript
js+html5实现canvas绘制椭圆形图案的方法
May 21 Javascript
防止Node.js中错误导致进程阻塞的办法
Aug 11 Javascript
node.js Sequelize实现单实例字段或批量自增、自减
Dec 08 Javascript
使用Vue构建可重用的分页组件
Mar 26 Javascript
vue-cli项目使用mock数据的方法(借助express)
Apr 15 Javascript
vue动态渲染svg、添加点击事件的实现
Mar 13 Javascript
JS写滑稽笑脸运动效果
May 28 Javascript
Json对象与Json字符串互转(4种转换方式)
Mar 27 #Javascript
JQUERY 实现窗口滚动搜索框停靠效果(类似滚动停靠)
Mar 27 #Javascript
早该知道的7个JavaScript技巧
Mar 27 #Javascript
JavaScript中的style.display属性操作
Mar 27 #Javascript
jquery ajax提交整个表单元素的快捷办法
Mar 27 #Javascript
jQuery渐变发光导航菜单的实例代码
Mar 27 #Javascript
鼠标放在图片上显示大图的JS代码
Mar 26 #Javascript
You might like
五个PHP程序员工具
2008/05/26 PHP
php session 预定义数组
2009/03/16 PHP
PHP定时更新程序设计思路分享
2014/06/10 PHP
PHP中IP地址与整型数字互相转换详解
2014/08/20 PHP
thinkPHP3.2使用RBAC实现权限管理的实现
2019/08/27 PHP
PHP 裁剪图片
2021/03/09 PHP
用javascript getComputedStyle获取和设置style的原理
2008/10/10 Javascript
jquery 模板的应用示例
2013/11/12 Javascript
JQuery中的html()、text()、val()区别示例介绍
2014/09/01 Javascript
JS+html5 canvas实现的简单绘制折线图效果示例
2017/03/13 Javascript
详解Vue-基本标签和自定义控件
2017/03/24 Javascript
angular bootstrap timepicker TypeError提示怎么办
2017/06/13 Javascript
js实现日期显示的一些操作(实例讲解)
2017/07/27 Javascript
深入理解ES6之数据解构的用法
2018/01/13 Javascript
Vue中的异步组件函数实现代码
2018/07/20 Javascript
js使用formData实现批量上传
2020/03/27 Javascript
vue-cli3使用mock数据的方法分析
2020/03/16 Javascript
Vue 使用typescript如何优雅的调用swagger API
2020/09/01 Javascript
Webpack5正式发布,有哪些新特性
2020/10/12 Javascript
JavaScript中arguments的使用方法详解
2020/12/20 Javascript
使用Python的Tornado框架实现一个Web端图书展示页面
2016/07/11 Python
Python 多线程实例详解
2017/03/25 Python
Python实现多进程的四种方式
2019/02/22 Python
解决Django一个表单对应多个按钮的问题
2019/07/18 Python
python图片验证码识别最新模块muggle_ocr的示例代码
2020/07/03 Python
python实现二分查找算法
2020/09/18 Python
Python中return函数返回值实例用法
2020/11/19 Python
巴西葡萄酒商店:Divvino
2020/02/22 全球购物
楼面经理岗位职责范本
2014/02/18 职场文书
同志主要表现材料
2014/08/21 职场文书
爱祖国爱家乡演讲稿
2014/09/02 职场文书
2014年法院工作总结
2014/11/24 职场文书
烟台的海导游词
2015/02/02 职场文书
教你做个可爱的css滑动导航条
2021/06/15 HTML / CSS
利用python进行数据加载
2021/06/20 Python
图文详解nginx日志切割的实现
2022/01/18 Servers