首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >将简单的jQuery解析为Ajax请求的一部分

将简单的jQuery解析为Ajax请求的一部分
EN

Stack Overflow用户
提问于 2011-12-19 04:43:21
回答 2查看 443关注 0票数 1

我希望解析服务器在ajax请求失败后以xml格式返回的错误。xml看起来像这样:

代码语言:javascript
运行
复制
<?xml version="1.0" encoding="UTF-8"?>
<errors>
  <error>Full name can't be blank</error>
  <error>Email can't be blank</error>
</errors>

我只是尝试从xml构建一个ul标记,并为xml响应中的每个错误使用安莉标记。响应的处理方式应该是输出这个超文本标记语言,并将其附加到id为“contactErrors”的div中:

代码语言:javascript
运行
复制
<ul>
   <li>Full name can't be blank</li>
   <li>Email can't be blank</li>
</ul>

目前我有以下jQuery,但我不知道如何正确解析HTTP422(表单错误/无法处理的实体)响应。

代码语言:javascript
运行
复制
$("#new_message").submit(function(e){
    e.preventDefault();

    $.ajax({
        type: "POST",
        url: "messages.xml",
        data: $(this).serialize(),
        cache: false,
        statusCode: {
            201: function(data) {
                $("#new_message").slideUp();
                $("#contactSuccess").fadeIn(2500);
            },
            422: function(data) {
                // XML response should be processed here and can be accessed by calling $(data)
            }
        }
    });
});

任何帮助都是非常感谢的!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-12-19 04:50:08

为什么不是JSon呢?对于XML,可以使用以下命令在操作中返回XML

代码语言:javascript
运行
复制
  return this.Content(xmlStringValue, "text/xml")
票数 0
EN

Stack Overflow用户

发布于 2011-12-19 05:40:01

JSON更适合于服务器客户端通信。在服务器端,您可以使用json_encode在PHP语言中将对象编码为JSON,在ASP.NET中使用JavaScriptSerializer将对象编码为JSON,等等。你可以在json.org上找到完整的列表(向下滚动)。解析它非常简单,因为它是一个有效的javascript代码,你只需要对它求值。

代码语言:javascript
运行
复制
var myObject = eval('(' + myJSONtext + ')');

如果你想自己编写JSON,可以把它想象成一个普通的javascript对象,它包含有值的成员,这些值可以是数字、布尔值、数组或字符串。

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

https://stackoverflow.com/questions/8554661

复制
相关文章

相似问题

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