一个关于jqueryajax和后台struts2交互的问题
我需要做的是,将前台一个值,传给后台action处理,action查询数据库,返回一个list型数据。然后,要将这个list型数据,展示到页面上,页面上是一个表格、、jq...
我需要做的是,将前台一个值,传给后台action处理,action查询数据库,返回一个list型数据。
然后,要将这个list型数据,展示到页面上,页面上是一个表格、、
jquery的ajax我有所了解了,现在不明白的就是,datatype定为json后,
后台该如何处理。还有jquery ajax,前台的写法如果有demo也要的。。我想弄明白,
分数还可以再加,问题貌似不怎么难,但是,得让我搞懂。。
需求的话,也就是,前台一个值传后台,后台处理我会。就是不知道如何,进行后台和前台的ajax交互。
我感觉我好啰嗦、。。
jquery ajax,要用这个。
后台处理好的等待传给前台的数据是个list<xxx> 型。xxx是一个实体类
前台显示的时候,是一个表格。 展开
然后,要将这个list型数据,展示到页面上,页面上是一个表格、、
jquery的ajax我有所了解了,现在不明白的就是,datatype定为json后,
后台该如何处理。还有jquery ajax,前台的写法如果有demo也要的。。我想弄明白,
分数还可以再加,问题貌似不怎么难,但是,得让我搞懂。。
需求的话,也就是,前台一个值传后台,后台处理我会。就是不知道如何,进行后台和前台的ajax交互。
我感觉我好啰嗦、。。
jquery ajax,要用这个。
后台处理好的等待传给前台的数据是个list<xxx> 型。xxx是一个实体类
前台显示的时候,是一个表格。 展开
3个回答
展开全部
貌似是底层的问题了。我所了解到就是,后台像前台传值的时候ajax的datatype定为json。意思也就是说,他所接收的返回值必须是json类型。在js中 没有什么特别严格的要求。数据类型,就是字符串,数组类型,没有对象之说。反过说,就是后台数据想要传送到前台,就要按照前台的数据格式进行封装;而前台传后台就要按照后台的格式封装数据。struts2就是把你封装好的数据传送到目的地。list<XXX>只是说数据是list集合形式的数据。需要吧list<xxx> 通过JSONArray进行转换成json返回到前台。在前台js中用jquery技术获取到这个json数据,其实就是数组数据,然后进行分析获取具体的数据,拼装成表格在页面显示
展开全部
项目引入struts2-json-plugin-xxxx.jar
你的Action包继承自json-default,下面是一个例子
<package name="ajax" namespace="/ajax" extends="json-default">
<action name="showUsers" class="ShowUsersAction">
<result type="json">
<param name="root">users</param>
</result>
</action>
</package>
追问
您再跟我说说,如何传入值吧,前台我拿到值,然后。。。关键我data这个不是特明白
用$.ajax(){}
追答
以下代码未经过测试,仅供参考。
$(document).ready(function() {
$("button").click(function() {
$.getJSON("getUsers.action", {
age : $("#age").val(),
sex : $("#sex").val(),
}, function(data) {
var text;
text = "<table>";
for ( var user in data) {
text += "<tr>";
text += "<td>" + user.id + "</td>";
text += "<td>" + user.name + "</td>";
text += "<td>" + user.age + "</td>";
text += "<td>" + user.sex + "</td>";
text += "</tr>";
}
text += "</table>";
$("#result").html(text);
});
});
});
年龄 : <input id="age"><br />
性别 : <input id="sex"><br />
<button>查询</button><br />
<div id="result"></div>
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
dataytpe:json,
data: {变量名1:变量值1,变量名2:变量值2}
其他ajax参数不变
后台代码利用request.getParameter(变量名) 来获取变量值。
最好去找一个json插件包
后台想给前台传json,要写类与json的转换。
data: {变量名1:变量值1,变量名2:变量值2}
其他ajax参数不变
后台代码利用request.getParameter(变量名) 来获取变量值。
最好去找一个json插件包
后台想给前台传json,要写类与json的转换。
更多追问追答
追问
能用action中的getset取值么。
如果可以,求详解。
request我知道,不想用这个。
麻烦了
追答
action中必须要有传入变量的同名实例属性变量,并且有getset方法。这样请求传入时会自动赋值给这些属性的。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询