关于strut2+ajax传参问题

问题描述

关于strut2+ajax传参问题

action中:
/**
* 判断用户是否存在
* @return
* @throws Exception
*/
public String findByName() throws Exception {
List userlist = adminService.searchStudent(username);
System.out.println(userlist.size()+username);
java.util.Map map = new HashMap();
if(userlist.size() > 0){
this.message = "exist";
map.put("message",message);
map.put("success", true);
json = JSONObject.fromObject(map);
}else{
map.put("success", false);
}
return SUCCESS;
}

配置文件中:
<!-- 判断用户是否存在 -->
    <action name="findByName" class="com.lb.action.AdminAction"
        method="findByName">
        <result type="json">
            <param name="root">json</param>
        </result>
    </action>

            /*判断用户是否存在*/
    function findByName(){
        $.ajax({
            url:'findByName.action',
            data:{username:$("#username").val()},
            type:'post',
            dataType:'json',
            success:function(data){
                var dataObj=eval("("+data+")");
                if('exist' == dataObj.message){
                    $.messager.alert('提示','该用户已存在','error');
                }else{
                    $.messager.alert('提示','该用户可使用','info');
                }
            },
            error:function(){
                $.messager.alert('提示','异常','info');
            }
        });
    }

    问题:我只想传message  前台判断('exist' == dataObj.message),但是就是不行,求高手解答

解决方案

if('exist' == dataObj.message)
->
if(dataObj.success)

另外检查下struts2的配置
http://kingxss.iteye.com/blog/1622455

解决方案二:

要返回json的话那个action返回值应该是void吧,然后用输出流返回json字符串就好了

解决方案三:

直接把message传到前台就好了,,为什么非得用map装起来,,然后又转成json,,这不是做多余的事吗

  <result type="json">
            <param name="root">message</param>
        </result>
时间: 2024-11-08 21:11:29

关于strut2+ajax传参问题的相关文章

ajax传参问题-ajax向servlet传参问题

问题描述 ajax向servlet传参问题 在一个ajax中能不能同时出现两种传参方式 我现在试的结果是 直接在url中加一个参数,然后在data:{"data":dataFromAjax}中再加一个参数 在servlet中debug看到 值接收到URL中的参数 这是不是说 在同一个ajax中只能出现一种参数传递方式 且URL传参优先级比较高

jQuery的ajax传参巧用JSON使用示例(附Json插件)

jQuery的ajax调用很方便,传参的时候喜欢用Json的数据格式.比如: 复制代码 代码如下: function AddComment(content) { var threadId = $("#span_thread_id").html(); var groupId = $("#span_group_id").html(); var groupType = $("#span_group_type").html(); var title =

ajax 传参进不去

问题描述 viewl:functionriqikongjian(){varphonen=$("#phonenumber").val();varmtime=$("#idate").val();debugger//alert(mtime);$.ajax({type:"post",datatype:"json",url:"BodyComPositionResults/KBTBodyReportPage?PhoneNumbe

ajax中data传参的两种方式分析_AJAX相关

本文实例讲述了ajax中data传参的两种方式.分享给大家供大家参考,具体如下: 1. POST方式: /** * 订单取消 * @return {Boolean} 处理是否成功 */ function orderCancel(orderId, commant){ var flag = false; $.ajax({ type: "POST", url: "../order/orderCancel.action", //orderModifyStatus data:

net-在Web用户控件ascx文件,怎么使用ajax调用后台方法并传参?

问题描述 在Web用户控件ascx文件,怎么使用ajax调用后台方法并传参? $.ajax({ type: "Post", url: "SetWidget.ascx/GetStr", data: "{'str':'我是','str2':'XXX'}", contentType: "application/json; charset=utf-8", dataType: "json", success: fun

springMVC3.0(文件上传,@RequestMapping加参数,@SessionAttributes,@ModelAttribute,转发,重定向,数值获取,传参,ajax,拦截器)

1.项目包结构如下: 2.       spring配置文件springMVC.xml修改如下: <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans"  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  xml

技术-关于JS调取服务和ajax获取url传参的问题

问题描述 关于JS调取服务和ajax获取url传参的问题 10.110.20.192:8080/BeijingSelling/services/hello?user=1244这是内网的服务地址 连接内网后在浏览器输入以上URL会在界面出现 Hello,1224. 就一个参数user,显示他的值:不输入则显示vistor 如何利用ajax或者其他技术获取user的值. 希望各位帮帮忙,确实查过不少资料,然后都是在本页面中获取URL的值,并不能解决我的问题. 解决方案 这个跨页需要服务器才能获取.然

ajax中data传参的两种方式分析

本文实例讲述了ajax中data传参的两种方式.分享给大家供大家参考,具体如下: 1. POST方式: /** * 订单取消 * @return {Boolean} 处理是否成功 */ function orderCancel(orderId, commant){ var flag = false; $.ajax({ type: "POST", url: "../order/orderCancel.action", //orderModifyStatus data:

图片-jsp页面传参问题(参数长度太长)

问题描述 jsp页面传参问题(参数长度太长) < img src=""../admin/image-read.action?icode=${data.icode}""/> 其中icode是一个图片的二进制数据串,比较长,传不到后台.有什么其他方法? 解决方案 这个方式肯定不行啊,虽然没明白你是不是直接从前台获取一个本地图片然后在jsp中转成二进制的,但是这样肯定传不了的.可以使用ajax form提交提交后也不刷新当前页面. 解决方案二: jsp页面传到