stevenjohn 发表于 2013-1-29 10:34:30

Struts2 Jquery+Ajax提交数据到后台

//UpdateAction.java



package com.abin.hospital.action;

import javax.servlet.http.HttpServletRequest;

import org.apache.struts2.ServletActionContext;

import com.abin.hospital.bean.UserBean;
import com.abin.hospital.singleton.UpdateSingleton;
import com.abin.hospital.singleton.UserSingleton;
import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.ActionSupport;

public class UpdateAction extends ActionSupport{
private static final UpdateSingleton updateSinglenton=UpdateSingleton.getInstance();
private String result;

public String update(){
ActionContext context=ActionContext.getContext();
HttpServletRequest request=(HttpServletRequest)context.get(ServletActionContext.HTTP_REQUEST);
String username=request.getParameter("username");
String password=request.getParameter("password");
String password1=request.getParameter("password1");
String password2=request.getParameter("password2");
UserBean bean=null;
try {
   bean=this.updateSinglenton.findUserByUserID(username);
} catch (Exception e) {
   e.printStackTrace();
}

if(bean==null||bean.getUserid()==null){
   result="notexist";
   return "json";
}

if(bean.getUserid()!=null&&!bean.getPassword().equals(password)){
   result="failure";
   return "json";
}

if(bean.getUserid()!=null&&bean.getPassword().equals(password)){
   int end=0;
   try {
    end=this.updateSinglenton.updateUserByUserID(bean,password1);
   } catch (Exception e) {
    e.printStackTrace();
   }
   if(end==1){
    result="success";
    return "json";
   }else{
    result="updatefailure";
    return "json";
   }
   
}

return null;
}

public String getResult() {
return result;
}

public void setResult(String result) {
this.result = result;
}
}




//struts-update.xml



<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
    "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
    "http://struts.apache.org/dtds/struts-2.0.dtd">
   
<struts>
<package name="userupdate" extends="json-default" namespace="/user" >

<action name="update" method="update" class="com.abin.hospital.action.UpdateAction">
   <result name="json" type="json"></result>
</action>

</package>


</struts>





//update.jsp

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%@ taglib prefix="s" uri="/struts-tags" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Young ABIN</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
</head>
<scripttype="text/javascript" src="../js/jquery-1.7.min.js"></script>
<scripttype="text/javascript">
function Validate() {
if($("#user").val()==""){
   alert("用户名不能为空!");
   $("#user").focus();
   return false;
}
if($("#oldpass").val()==""){
   alert("旧密码不能为空");
   $("#oldpass").focus();
   return false;
}
if($("#newpass1").val()==""){
   alert("新密码不能为空");
   $("newpass1").focus();
   return false;
}
if($("#newpass2").val()==""){
   alert("新确认密码不能为空");
   $("newpass2").focus();
   return false;
}
if($("#newpass1").val()!=$("#newpass2").val()){
   alert("两次填写的新密码不一样,请您重新填写");
   $("newpass1").focus();
   return false();
}

var username=$("input").val();
//alert("用户名="+username);
var password=$("input").val();
//alert("password="+password);
var password11=$("input").val();
//alert("password1="+password11);
var password22=$("input").val();
alert("password2="+password22);

$.ajax({
   url : "../user/update.action",
   type : "post",
   data : ({username : username ,password : password,password1 : password11,password2 : password22}),
   success : function(data){
    if(data.result=="notexist"){
   alert("该用户不存在,请您先注册");
    }else if(data.result=="success"){
    // alert("修改密码成功");
   document.write("修改密码成功")
   document.write("<br/>");
   window.location.href="../login.jsp";
    }else if(data.result=="failure"){
   alert("旧密码不正确");
    }else if(data.result=="updatefailure"){
   alert("用户密码修改失败,请您重新修改");
    }
   }
   
});

}
</script>
<body >
   用户名:
   <input id="user" name="username" type="text" />
   <br />
   旧密码:
   <input id="oldpass" name="password" type="password" />
   <br />
   密码:
   <input id="newpass1" name="password11" type="password" />
   <br />
   确认密码:
   <input id="newpass2" name="password22" type="password" />
   <br />
   <input value="提交" type="submit" />
   
   <input value="重置" type="reset" />
   <br />

</body>
</html>
页: [1]
查看完整版本: Struts2 Jquery+Ajax提交数据到后台