<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%@ taglib uri="/struts-tags" prefix="s" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>My JSP 'index.jsp' starting page</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<script type="text/javascript" src="js/jquery-1.8.3.js"></script>
<script type="text/javascript" src="js/struts2JquerySelect.js"></script>
</head>
<body>
<s:select list="#{'zhangsan':'zhangsan', 'lisi':'lisi' }" id="selName" ></s:select>
<input type="button" id="sub" value="查询" />
</body>
</html>
//获取元素的文本信息一定要用val()方法.
//第一种方式:$.post()方式.
$(function()
{
$("button").click(function()
{
$.post("selInfo", {name:$("#selName").val()}, function(returnData,status)
{
if("success" == status)
{
alert("ID:"+ returnData.id +"name:"+ returnData.name +"adress:"+ returnData.address);
}
})
})
})
//第二种方式:$.ajax({}) 方法传的是一个类似于json对象形式的的键值对.
//所以用的{ type:"", url:"", data:"", }
/*
$(function()
{
var selName=$("#selName").val();
$("#sub").click(function()
{
$.ajax(
{
//以post方式提交.
type:"post",
//提交的地址.
url:"selInfo",
//提交的数据以json的键值对方式.多个参数可以date:{ name:selName, age:myAge } .
//也可以以字符串方式 data:"name=selName"多个参数可以"name=selName&age=myAge"
data:{name:selName},
//类似于回调函数:由于struts2的插件已经将实体对象在内部自动转换成了json对象.
//所以成功返回时得到一个json对象覆给returnData.
success:function(returnData)
{
alert("ID:"+ returnData.id +"name:"+ returnData.name +"adress:"+ returnData.address);
}
});
});
});
*/
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
"http://struts.apache.org/dtds/struts-2.3.dtd">
<struts>
<!-- 用到json插件的时候并且result的type属性的值为json时候,需要用到struts2-json-plugin-2.3.14.jar这个jar包.并且需要继承json-default -->
<package name="default" extends="struts-default,json-default">
<action name="selInfo" class="org.struts.action.struts2JquerySelect">
<result type="json" />
</action>
</package>
</struts>
package org.struts.model;
public class Users {
private int id;
private String name;
private String address;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
}
package org.struts.action;
import org.struts.model.Users;
public class struts2JquerySelect {
private int id;
private String address;
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
public String execute()
{
Users users1=new Users();
users1.setId(1);
users1.setName("夏");
users1.setAddress("北京");
System.out.println("--------------------------");
Users users2=new Users();
users2.setId(1);
users2.setName("夏");
users2.setAddress("北京");
if("zhangsan".equals(name))
{
this.id=users1.getId();
this.name=users1.getName();
this.address=users1.getAddress();
}
else if("lisi".equals(name))
{
this.id=users2.getId();
this.name=users2.getName();
this.address=users2.getAddress();
}
return "success";
}
}