首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >未执行成功函数

未执行成功函数
EN

Stack Overflow用户
提问于 2015-06-27 02:27:00
回答 3查看 69关注 0票数 1

我正在进行一个ajax调用,以便从数据库中获取一条记录。我在控制台中看到,它成功地返回了记录,但成功的原因是函数没有被执行。

代码语言:javascript
运行
复制
function ajaxForParent() {
    var search = document.getElementById("resourceId").value;
    var folderId = document.getElementById("folderId").value;

    $.ajax({
        type : "GET",
        contentType : 'application/json; charset=utf-8',
        dataType : 'json',
        url : "/admin/content/changeParent",
        data : {search : search, folderId : folderId}, // Note it is important
        success : function(folder) {
            alert(folder);
            if (folder.id == document.getElementById("folderId").value) {
                $("#parentAvailable").html("Children Limit exceeding you cannot add more than 9 levels children");
                return false;
            }

            console.log(folder.id);
            console.log(document.getElementById("folderId").value);

            if (folder.id != document.getElementById("folderId").value) {
                console.log("I am coming here " +folder.id);
                var s = document.getElementById("folderId");
                s.value = folder.id;
            }
            $("#parentAvailable").html("Parent Found Successfully!");
        },
        error : function(content) {
            $("#parentAvailable").html("Parent Not available");
        }
    });
}

我已经尝试了上面的方法,它总是进入错误函数,即使记录从服务器端成功返回。有人能告诉我我哪里做错了吗?

当我抛出这个错误时,我会得到这样的结果

SyntaxError: JSON.parse: end of data after property value in object at line 1 column 1587309 of the JSON data

EN

回答 3

Stack Overflow用户

发布于 2015-06-27 02:37:59

您不能通过GET发送json数据。您需要使用POST

代码语言:javascript
运行
复制
$.ajax({
    type : "POST", // <------ Use POST 
    contentType : 'application/json; charset=utf-8',
    dataType : 'json',
    url : "/admin/content/changeParent",
    data : {search : search, folderId : folderId},

如果您的应用程序/admin/content/changeParent只接受GET,您可能需要考虑将其更改为接受POST。否则,您的应用程序将无法接收您通过GET正确发送到服务器的JSON数据。

票数 3
EN

Stack Overflow用户

发布于 2015-06-27 02:37:45

该响应看起来包含格式不正确的json数据。尝试将响应复制到http://jsonlint.com/等json linter中以查找问题。

票数 0
EN

Stack Overflow用户

发布于 2015-06-27 02:38:11

获取您的服务器答案并将其粘贴到某个json linter (如http://jsonlint.com/)中,以确保jquery可以将其转换为有效的响应。

您还可以将断点放入错误回调中,并检查当时返回的错误和值。在那里,如果接收到的数据是字符串而不是对象,请尝试调用JSON.parse(/* your server response */)来测试它是否正常工作,以及是否收到任何额外的错误。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31079814

复制
相关文章

相似问题

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