首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >JQuery.ajax将无法识别来自JSP的JSON响应

JQuery.ajax将无法识别来自JSP的JSON响应
EN

Stack Overflow用户
提问于 2013-05-03 03:26:55
回答 2查看 1.6K关注 0票数 1

我正在尝试使用JSP、Jquery和AJAX编写一个简单的应用程序,以便在页面上获取和显示数据。

下面是我的ajax函数:

代码语言:javascript
复制
    $.ajax({
                type:"POST",
                url:"interface_load_status_page.jsp",
                data:dataString,
                dataType:"json",
                success: function(data, textStatus, jqXHR){
                    $("#response").html("");
                    $("#response").append(data);
                },
            });

只要dataType设置为"text“,ajax调用就可以正常工作。不幸的是,当它被设置为json时,我需要它工作。下面是ajax函数调用的JSP的代码

代码语言:javascript
复制
<%
        response.setContentType("application/json");
        response.setCharacterEncoding("UTF-8");

            String date = request.getParameter("date");
            System.out.println("Date: "+date);  
        if (date != null) {
                DBAccess acc = new DBAccess();
                ArrayList<InterfaceLoadStatus> loadStatus = acc
                        .loadStatusQuery(date);
                //System.out.println(loadStatus);
                out.println(Utils.getJSONLoadStatus(loadStatus));
            }
        %>

JSP所做的是将查询结果转换为JSON格式,如下所示:

代码语言:javascript
复制
{"success":true,"interfaceloadstatus":[{"bType":"COC","start":"2013-04-22 03:30:10.0","end":"2013-04-22 04:35:38.0","exe":"01:05:28","handOff":"Y"},{"bType":"DST","start":"2013-04-22 00:10:09.0","end":"2013-04-22 00:23:17.0","exe":"00:13:08","handOff":"Y"},{"bType":"HTL","start":"2013-04-22 00:10:10.0","end":"2013-04-22 01:17:14.0","exe":"01:07:04","handOff":"Y"},{"bType":"RC","start":"2013-04-22 00:10:11.0","end":"2013-04-22 00:45:17.0","exe":"00:35:06","handOff":"Y"},{"bType":"AIR","start":"2013-04-22 03:00:16.0","end":"2013-04-22 04:03:58.0","exe":"01:04:42","handOff":"Y"},{"bType":"VP","start":"2013-04-22 03:00:16.0","end":"2013-04-22 04:03:58.0","exe":"01:04:42","handOff":"Y"},{"bType":"AIR-IAR","start":"2013-04-22 09:45:06.0","end":"2013-04-22 10:24:51.0","exe":"00:40:45","handOff":"Y"}]}

好了,现在JSON输出是固定的,但是JQuery ajax函数仍然不能识别它

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-05-03 03:31:32

根据www.jsonlint.com的说法,每一行都是有效的JSON。另一方面,并不是整个输出都是有效的json,所以如果不是逐行输入,这可能是原因所在。

票数 0
EN

Stack Overflow用户

发布于 2019-04-13 05:50:35

我知道这个问题很老了,你可能早就忘记了它,但我刚刚遇到了同样的问题,所以我想我应该分享我所做的,以防其他人正在寻找解决方案。

如下所示:

JSP

代码语言:javascript
复制
<%@ page contentType="text" %>

*JSON here*

JS

代码语言:javascript
复制
var jsonData = JSON.parse(data);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16346166

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档