一个关于jqueryajax和后台struts2交互的问题

我需要做的是,将前台一个值,传给后台action处理,action查询数据库,返回一个list型数据。然后,要将这个list型数据,展示到页面上,页面上是一个表格、、jq... 我需要做的是,将前台一个值,传给后台action处理,action查询数据库,返回一个list型数据。
然后,要将这个list型数据,展示到页面上,页面上是一个表格、、

jquery的ajax我有所了解了,现在不明白的就是,datatype定为json后,
后台该如何处理。还有jquery ajax,前台的写法如果有demo也要的。。我想弄明白,

分数还可以再加,问题貌似不怎么难,但是,得让我搞懂。。
需求的话,也就是,前台一个值传后台,后台处理我会。就是不知道如何,进行后台和前台的ajax交互。

我感觉我好啰嗦、。。
jquery ajax,要用这个。
后台处理好的等待传给前台的数据是个list<xxx> 型。xxx是一个实体类
前台显示的时候,是一个表格。
展开
 我来答
百度网友8cdafe0
2013-08-28 · 超过19用户采纳过TA的回答
知道答主
回答量:145
采纳率:0%
帮助的人:61.3万
展开全部
貌似是底层的问题了。我所了解到就是,后台像前台传值的时候ajax的datatype定为json。意思也就是说,他所接收的返回值必须是json类型。在js中 没有什么特别严格的要求。数据类型,就是字符串,数组类型,没有对象之说。反过说,就是后台数据想要传送到前台,就要按照前台的数据格式进行封装;而前台传后台就要按照后台的格式封装数据。struts2就是把你封装好的数据传送到目的地。list<XXX>只是说数据是list集合形式的数据。需要吧list<xxx> 通过JSONArray进行转换成json返回到前台。在前台js中用jquery技术获取到这个json数据,其实就是数组数据,然后进行分析获取具体的数据,拼装成表格在页面显示
fuhaiwei
2013-08-28 · TA获得超过3409个赞
知道大有可为答主
回答量:974
采纳率:75%
帮助的人:1388万
展开全部
  1. 项目引入struts2-json-plugin-xxxx.jar

  2. 你的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>
3.Action提供一个List<User> getUsers()方法。execute方法返回success
追问
您再跟我说说,如何传入值吧,前台我拿到值,然后。。。关键我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>
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友f296ad8
2013-08-28 · TA获得超过142个赞
知道小有建树答主
回答量:347
采纳率:0%
帮助的人:149万
展开全部
dataytpe:json,
data: {变量名1:变量值1,变量名2:变量值2}
其他ajax参数不变

后台代码利用request.getParameter(变量名) 来获取变量值。

最好去找一个json插件包
后台想给前台传json,要写类与json的转换。
更多追问追答
追问
能用action中的getset取值么。
如果可以,求详解。
request我知道,不想用这个。
麻烦了
追答
action中必须要有传入变量的同名实例属性变量,并且有getset方法。这样请求传入时会自动赋值给这些属性的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式