0 1

json返回的boolean类型无法解析?5

我的action代码是这样写的@Result(name="ajax",type="json")
public String doList(){
		try{
			List<TbNovel> list = spiderService.queryAllSpider();
			JSONArray jsonArray = new JSONArray();
			result = "{\"success\":true,\"result\":\'"+jsonArray.fromObject(list)+"\'}";
			System.out.println(result);
			}catch(Exception e){
				e.printStackTrace();
				result = "{\"success\":false,\"result\":\'[]\'}";
			}
			return "ajax";
		}

jsp页面是这样写的
$.ajax({
type : "post",
url : "${pageContext.request.contextPath}/spider/spider!doList.action",
data : "",
dataType : "text",
success : function(data) {
alert(data);
var data = eval('(' + data + ')');
alert(data.success);
if(data.success){
setJsonData(data.result);
}else{
alert("-->"+data.result);
}
},
error : function(data) {
alert("==>"+data);
}
});
我运行后alert(data)返回的是全部的值,但是data.success就变成underfined了,这个谁能帮我解决下啊

问题补充:我把dataType : "json", 改成这样了 alert(data)返回的事[object Object]那我需要怎么取值啊alert(data.success)不显示啊
2013年4月24日 10:09

7个答案 按时间排序 按投票排序

0 0

你的result 类型未定义成JSONObject , 即使你的 dataType : "json" 也没用。

我觉得你可以这样。

   JSONObject result = new JSONObject();

   result.put("success", "true");
   result.put("result", jsonArray);

然后将result 放置response 中就可以了。

2013年4月24日 22:33
0 0

或者你可以用json.js把字符串转换为JSON对象再来处理

2013年4月24日 20:46
0 0

man,firebug!!!

2013年4月24日 18:50
0 0

其实,只要你掌握了任何一个调试工具,这样的问题就不成为问题了。
FireFox下用FireBug,IE下用自带的IE开发者工具(按F12)。
开启调试,打个断点,看看data到底是啥,里面到底有啥,然后采取应对措施。

如果不掌握这项技能,那么就会经常发生瞎子摸象的情况了。

2013年4月24日 16:56
0 0

1、dataType : "text",可以直接写成dataType : "json",直接指定返回值类型。
2、还有不知道你配置是怎么配置的.

2013年4月24日 14:52
0 0

按你这样写的话,data好像只是一个单纯的字符串了吧,不是一个json对象,data.success当然是underfined了。

2013年4月24日 11:29
0 0

你直接 dataType : "json",  返回就行了 没必要再自己eval了

2013年4月24日 10:14

相关推荐

    springMVC poi解析ajax上传excel文件,返回json对象\list数组

    poi解析excel功能参数说明 ...这个与上面工具类类似,不过这个是解析本地excel文件不是使用的流,使用迭代遍历sheet工作簿与每行每列的值,将所有类型作为String类型处理返回一个json对象输出至控制台

    json:验证值是否为可解析的JSON字符串

    JSON格式 验证值是否为可解析的JSON字符串。安装$ npm install validate.io-json 要在浏览器中使用,请使用 。用法 var isJSON = require ( 'validate.io-json' ) ;isJSON(value) 验证value是否为可解析的JSON ...

    PHP json_decode函数详细解析

    2、第一个参数是json格式的字符串,第二个参数是boolean值(false转化成对象,true转化成数组,默认false),如果转化失败返回null。 二、遇到的问题在项目中调用了java写的一个web服务,返回的数据是”{‘stauts’:’...

    typescript-json-decoder:用于Typescript的Json解码器

    在运行时检测到您的类型实际上与您的API调用返回的值不匹配,并且无法以方便的方式将数据解析为您喜欢的数据结构,这很糟糕-并且将类型定义与其解析器分开是不可接受的。 安装: 我还写了一篇关于它如何在内部工作...

    Javascript笔记一 js以及json基础使用说明.docx

    JavaScript是一种特殊的编程语言,它的数据类型只有五种,即undefined、null、boolean、number和string。JavaScript中的代码也只有函数一种形式。函数可以是定义式的,也可以是变量式的。定义式的函数语句会优先执行...

    Android静默安装常用工具类

    parseKeyAndValueToMap(String source, String keyAndValueSeparator, String keyAndValuePairSeparator, boolean ignoreSpace) 字符串解析为map toJson(Map, String&gt; map) map转换为json格式 源码可见MapUtils.java...

    ll:缩短我的一些网站配置文件的链接

    二 由Next.js和Vercel支持的最小链接缩短器。路线结构: { url: string name: string public: boolean title?...请尝试routes.json解析!) 返回的URL将是您的API URL。 只需单击下面的按钮,然后填写适当的字段。

    javascript笔试题

    基本类型包括 Number、String、Boolean、Null、Undefined 等,而复合类型包括 Object、Array 等。 9. JavaScript 是否有块级作用域?即在代码块中定义的变量,出了代码块是否可以被访问到? JavaScript 中没有块级...

    ll::high_voltage: 由 Next.js 和 DNS 魔法提供支持的超快链接缩短器!

    public: boolean title?: string description?: string } url是您要重定向到的结束 URL。 name是重定向到url的路由的名称。 public是一个布尔值,用于确定此重定向是否出现在公共目录中。 基本设置 LL创建是完全...

    基于SSM框架+Mysql的企业CRM客户关系管理系统项目源码+数据库+项目说明.zip

    使用@RequestBody接收Axios传来的Json对象时,接收到的checked属性为一个Boolean类型,而不是一个String 2. 在用户不需要记住密码时,调用setMaxAge方法将cookie的生命周期设置为0,即可销毁cookie 3. 由于...

    pull-serializer:反序列化拉流

    采用双工拉流并返回一个包装版本,该版本将发出/使用序列化格式。 第二个参数可选地接受一个定义了{stringify: Function, parse: Function}的对象( JSON签名)。 第三个参数可选地采用标志{ignoreErrors: Boolean,...

    xUtils3 demo

    * 如果返回值是json形式, 那么利用第三方的json工具将十分容易定义自己的ResponseParser. * 如示例代码{@link org.xutils.sample.http.BaiduResponse}, 可直接使用BaiduResponse作为 * callback的泛型. * * 2. ...

    JavaScript对象验证库js-validator.zip

    使用 js-validator 来验证对象或者 JSON 是否符合规则非常方便,而且具有很好的可扩展性。举个例子var example = {  text: 'Hello world!',  date: '2015-07-07',  comments: null,  },  rules = {  ...

Global site tag (gtag.js) - Google Analytics