问题描述:
为了确保数据库中不能保存重复手机串号,点击“提交”按钮时验证手机串号是否已存在,用jQuery实现方法如下所示:
jsp页面中对应的代码如下所示:
<html>
<head>
<title>终端管理-添加</title>
<script>
$(document).ready(function(){
var validate = $("#inputForm").validate({
rules:{
equipmentImei:{required:true,
remote:{
url: "equipment!checkImei.action",
data: {
equipmentImei: function() {
return $("#equipmentImei").val();
}
}
}
},
},
messages:{
equipmentImei:{required:"手机串号不能为空!",
remote:"串号已存在"
}
}
});
$("#save").click(function(){
if(validate.form()){
$("#inputForm").attr("action","equipment!save.action");
$("#inputForm").submit();
}
return false;
});
});
</script>
</head>
<body style="margin: 0, 0, 0, 0">
<div align="center">
<h1>创建终端信息</h1>
</div>
<form id="inputForm" action="equipment!save.action" method="post">
<input type="hidden" name="equipmentId" id="equipmentId" value="${equipmentId}" />
<table width="900" border="1" cellPadding=0 cellspacing="0">
<font color="red">*</font>为必填选项
<tr>
<td width="26%">手机串号:<font color="red">*</font>
</td>
<td>
<input name="equipmentImei" type="text" id="equipmentImei" value="${equipmentImei }" size="35" />
</td>
</tr>
</table>
<div class="btnav">
<input type="submit" value=" 提 交 " class="submit" id="save" />
<input type="button" value=" 取 消 " class="submit" onclick="history.back()" />
</div>
</form>
</body>
</html>
java代码:
//检查手机串号是否存在,一个串号只能对应一个用户
public void checkImei(){
String imei = Struts2Utils.getRequest().getParameter("equipmentImei");
String ret = "true";
if(imei != null && !"".equals(imei.trim())){
if(equipmentManager.isImeiExist(imei.trim())){
//串号存在
ret = "false";
}else{
ret = "true";
}
}
Struts2Utils.renderJson(ret);
}
public boolean isImeiExist(String imei){
return equipmentDao.isImeiExist(imei);
}
public boolean isImeiExist(String imei){
String sql="select * from ss_equipment where equipment_imei ='"+imei+"'";
SQLQuery sq=getSession().createSQLQuery(sql);
if(sq.list()!=null&&sq.list().size()>0){
return true;
}else {
return false;
}
}