easyUI中validatebox使用(class="test01 easyui-validatebox")
非空校验 required="true" //required="required"
使用validType指定
data-options="validType:'length[4,6]'"
<input required="true" data-options="validType:'length[4,6]'" id="txtNewPass" type="Password" class="test1 easyui-validatebox" />
确认按钮绑定事件:
$("#btnEp").click(function(){
//进行表单校验
var v = $("#editPasswordForm").form("validate");
if(v){
//校验两次输入是否一致
var v1 = $("#txtNewPass").val();
var v2 = $("#txtRePass").val();
if(v1 == v2){
//两次输入一致,发送ajax请求
$.post("userAction_editPassword.action",{"password":v1},function(data){
if(data == '1'){
//修改成功,关闭修改密码窗口
$("#editPwdWindow").window("close");
}else{
//修改密码失败,弹出提示
$.messager.alert("提示信息","密码修改失败!","error");
}
});
}else{
//两次输入不一致,弹出错误提示
$.messager.alert("提示信息","两次密码输入不一致!","warning");
}
}
});
在UserAction中创建修改密码方法
@Controller
@Scope("prototype")
public class UserAction extends BaseAction<User> implements ModelDriven<User> {
@Autowired
private IUserService userService;
/**
* 更改密码
* @return
* @throws IOException
*/
public String editPassword() throws IOException{
String f = "1";
User user = BOSUtils.getLoginUser();
try{
userService.editPassword(user.getId(),model.getPassword());
}catch(Exception e){
e.printStackTrace();
f = "0";
}
ServletActionContext.getResponse().setContentType("text/html;charset=utf-8");
ServletActionContext.getResponse().getWriter().write(f);
return NONE;
}
}
在UserService中提供修改密码方法
public void editPassword(String id, String password) {
//使用MD5加密密码
String password1 = MD5Utils.md5(password);
userDao.executeUpdate("user.editpassword", password1,id);
}
在BaseDao中提供通用更新方法
public void executeUpdate(String queryName, Object... objects) {
Session session = this.getSessionFactory().getCurrentSession();
Query query = session.getNamedQuery(queryName);
int i = 0;
for (Object object : objects) {
//为HQL语句中的?赋值
query.setParameter(i++, object);
}
//执行更新
query.executeUpdate();
}
在User.hbm.xml中定义更新语句
<query name="user.editpassword">
UPDATE User SET password = ? WHERE id = ?
</query>