(Struts2学习篇) Struts2之Jquery整合

主要思路:

1、客户端是通过$.ajax()方法向struts2.action传递数据;

2、其中actionexecute()方法返回值为空,并通过【ServletActionContext.getResponse().getWriter().print(result);方法将数据传到jQuery中。

 

相关源代码:

struts.xml配置文件

    <package name="struts2.action" extends="struts-default">
    <action name="loginUser" class="com.vixuan.skydrive.action.LoginActions">
    </action>
    </package>


 

登入Action(LoginActions)

package com.vixuan.skydrive.action;

import org.apache.struts2.ServletActionContext;

import com.opensymphony.xwork2.ActionSupport;

public class LoginActions extends ActionSupport {

	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	private String mname;

	private String mpass;

	/* 省略getter和setter方法 */

	public String execute() throws Exception {

		boolean result = false;

		if ("root".equals(mname) && "123456".equals(mpass))

		{
			result = true;
		}

		// 向客户端传递数据
		ServletActionContext.getResponse().getWriter().print(result);
		return null;
	}

	public String getMname() {
		return mname;
	}

	public void setMname(String mname) {
		this.mname = mname;
	}

	public String getMpass() {
		return mpass;
	}

	public void setMpass(String mpass) {
		this.mpass = mpass;
	}

}

 

用户登入Html(Login.html)

<html>

<head>

<title>jQuery与Struts2的整合</title>

<meta http-equiv="content-type" content="text/html; charset=GBK">



<style type="text/css">
body {
	font-size: 13px
}

.divFrame {
	width: 250px;
	border: solid 1px #666
}

.divFrame .divTitle {
	padding: 5px;
	background-color: #eee
}

.divFrame .divContent {
	padding: 8px
}

.divFrame .divContent .clsShow {
	font-size: 14px
}

.btn {
	border: #666 1px solid;
	padding: 2px;
	width: 50px;
	filter: progid:DXImageTransform.Microsoft.Gradient(GradientType = 0, StartColorStr = #ffffff, EndColorStr =
		#ECE9D8);
}

form {
	padding: 0px;
	margin: 0px
}
}
</style>

<script type="text/javascript" src="js/jquery-1.9.1.js"></script>

<script type="text/javascript">

       $(function()

       {

           $("#Button1").click(function(){ 

              var mName=encodeURI($("#mname").val());

              var mPass=encodeURI($("#mpass").val());

              $.ajax(

              {

                  url:"loginUser.action",

                  dataType:"html",

                  data:{mname:mName,

                       mpass:mPass},

                  success:function(strValue)

                  {

                     alert(strValue);

                     

                     if(strValue=="true"){

                         $("#divTip").html("操作提示,登录成功!");

                     }else

                     {

                         $("#divTip").html("用户名或密码错误!");

                     }

                  }

              })

           })

       })

    

    </script>

</head>



<body>

	<div class="divFrame">

		<div class="divTitle">用户登录</div>

		<div class="divContent">



			<div id="divTip"></div>

			<div id="box">

				<form id="myForm">

					名称:<input type="text" id="mname" name="mname" /><br /> 密码:<input
						type="password" id="mpass" name="mpass" /><br />

					      <input id="Button1" type="button"
						class="btn" value="登录" />   <input id="Button2" type="reset"
						class="btn" value="取消" />

				</form>

			</div>

		</div>

	</div>

	<br /> 本网页显示的是通过$.ajax()方法向struts2.action传递数据,
	<br />其中action中execute()方法返回为空,
	<br />并通过【ServletActionContext.getResponse().getWriter().print(result);】
	方法将数据传到jQuery中。

</body>

</html>


相关结果展示:

成功:

 

失败:


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值