首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

struts与jQuery的完善整合方式之一

2012-08-31 
struts与jQuery的完美整合方式之一?plugin一定要是0.33的因为别的有错误和bug?commons-beanutils.jarcommo

struts与jQuery的完美整合方式之一


struts与jQuery的完善整合方式之一?plugin一定要是0.33的因为别的有错误和bug
?commons-beanutils.jar
commons-collections.jar
commons-logging.jar
commons-lang.jar
ezmorph-1.0.6.jar
json-lib-2.2.3-jdk.jar

?

2、服务器端处理程序

?

package com.sailor.test.action;import java.io.IOException;import java.io.PrintWriter;import java.util.ArrayList;import java.util.List;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import net.sf.json.JSONArray;import org.apache.struts.action.Action;import org.apache.struts.action.ActionForm;import org.apache.struts.action.ActionForward;import org.apache.struts.action.ActionMapping;import com.sailor.test.action.form.LoginForm;import com.sailor.test.model.LoginDTO;/** *//**  * MyEclipse Struts * Creation date: 12-28-2008 *  * XDoclet definition: * @struts.action path="/login" name="loginForm" input="/login.jsp" scope="request" validate="true" */public class LoginAction extends Action {   /**//*    * Generated Methods    */     /** *//**      * Method execute     * @param mapping     * @param form     * @param request     * @param response     * @return ActionForward    */    public ActionForward execute(ActionMapping mapping, ActionForm form,            HttpServletRequest request, HttpServletResponse response) {                          System.out.println("begin");         LoginForm loginForm = (LoginForm) form;                 List<LoginDTO> list = new ArrayList<LoginDTO>();                 LoginDTO l1 = new LoginDTO();        l1.setUsername("haiou");        l1.setPassword("sa");                 LoginDTO l2 = new LoginDTO();        l2.setUsername("sailor");        l2.setPassword("123456");                 LoginDTO l3 = new LoginDTO();       l3.setUsername(loginForm.getUsername());       l3.setPassword(loginForm.getPassword());         list.add(l1);        list.add(l2);       list.add(l3);                 //适用于List        //Map<String, Object> map = new HashMap<String, Object>();        //map.put("userlist", list);        //JSONObject json = JSONObject.fromObject(map);                 //适用于Map        JSONArray json = JSONArray.fromObject(list);                 try {            PrintWriter out = response.getWriter();            out.print(json);                    } catch (IOException e) {           e.printStackTrace();        }         return null;    }}

?

2、struts-config,web.xml不需要特殊的配置

3、login.jsp:输入用户名和密码,然后显示在本页面
<%struts与jQuery的完善整合方式之一@?page?language="java"?pageEncoding="UTF-8"%>
<%struts与jQuery的完善整合方式之一@?taglib?uri="http://struts.apache.org/tags-bean"?prefix="bean"%>?
<%struts与jQuery的完善整合方式之一@?taglib?uri="http://struts.apache.org/tags-html"?prefix="html"%>
?
<html>?
????<head>
????????<title>JSP?for?LoginForm?form</title>

??????????<script?src="jquery-1[1].2.1.pack.js"?charset="utf-8"></script>
????<script>struts与jQuery的完善整合方式之一
????$(document).ready(function()struts与jQuery的完善整合方式之一{
????
??????$("#userlogin").click(function()struts与jQuery的完善整合方式之一{
????????????$.ajax(struts与jQuery的完善整合方式之一{
?????????????????url:'login.do',?
?????????????????type:?'post',
?????????????????data:'username='+$("#username").val()+'&password='+$("#password").val(),?
?????????????????timeout:?2000,
?????????????????error:?function()struts与jQuery的完善整合方式之一{
????????????????????alert('错误');
?????????????????},
????????????????success:?function(json)struts与jQuery的完善整合方式之一{
????????????????
????????????????var?users?=?eval('('?+?json?+?')');
??????????????
????????????????$("#result").empty();
????????????????$("#username").attr("value","");?
????????????????$("#password").attr("value","");?
????????????????
????????????????//返回的是List
???????????????$.each(users,function(i,?user)struts与jQuery的完善整合方式之一{???????
??????????????????$("#result").append("<li>"+?i?+?"?name:?"?+?user.username?+?"&nbsp;?pwd:"+?user.password?+"</li>");
???????????????});
???????????????
???????????????//返回的是Map类型
???????????????//??var?users?=?myObject.userlist;
???????????????//?$.each(users,function(i,?user){
???????????????//????$("#result").append("<li>"+?i?+?"?name:?"?+?user.username?+?"&nbsp;?pwd:"+?user.password?+"</li>");
???????????????//?});
?????????????????}
?????????});
????????
?????});??????
???
????????//ajax提交
????????$("#loading").ajaxStart(function()struts与jQuery的完善整合方式之一{?
?????????????$(this).html("<img?src="loading.gif">&nbsp;正在加载struts与jQuery的完善整合方式之一");
??????????});?
??????
???????//ajax成功状态
????????$("#loading").ajaxSuccess(function()struts与jQuery的完善整合方式之一{
?????????????$(this).html("保存成功!");
?????????});
?????????
????????//ajax结束状态
?????????$("#loading").ajaxStop(function()struts与jQuery的完善整合方式之一{
???????????$(this).hide();
??????});?
??
????});
????</script>


????</head>
????<body>?
????用户名?:?<input?type="text"?id="username"?name="username"/><br/>
????密码?:?????<input?type="password"?id="password"?name="password"/><br/>
????????????<font?id="userlogin">登陆</font><span?id="loading"></span>

????<p?id="result"></p>
????</body>
</html>

?

?

?

?

?

?

?

?

?

?

?

?

?

<form action="FuserAction.do?method=login" method="post" id="loginf">
????? ????????? <input type="text" name="mail" name="passwd" value="登 录"/>
??</form>

<script language="javascript">

function checkf(){
??var form=$("#loginf");
??var url = form.attr('action');
??
??/* var params = {
???mail:encodeURI(form.attr('content').value),??? //这个可能是适合中文的
???passwd:form.attr('uid').value
??};*/
?? var params = {
???mail:form.attr("mail").value,
???passwd:form.attr("passwd").value
??};
??readyFn = function(data){
???alert(data);
???alert(data.message);
??};
??jQuery.post(url, params, readyFn, 'json');
?
?$(function(){alert();});
?
?

}
</script>

热点排行