你能在同一个ajax调用中同时处理json和html数据类型吗?

时间:2011-03-02 23:21:39

标签: javascript .net jquery asp.net asp.net-mvc

无论如何我在发布jquery ajax时可以同时处理json和html返回类型:

例如,这个ajax调用需要html返回

$.ajax({
            type: "POST",
            url: url
            data: data,
            dataType: "html",
            success: function (response) {
                var $html = "<li class='list-item'>" + response + "</li>";
                $('#a').prepend($html);                           
            },
            error: function (xhr, status, error) {
                alert(xhr.statusText);
            }
        });

但我想修改它,以便在出现模型错误时返回json对象。所以我可以这样做:

success: function (response) {
          if (response.Error){
                 alert(response.Message);   
          } else {
              var $html = "<li class='list-item'>" + response + "</li>";
              $('#a').prepend($html);                           
          }

这可能吗?

1 个答案:

答案 0 :(得分:3)

对于第一种情况,只需将html放在response.Message字段中即可。返回包含在json对象中的html以便可以轻松添加状态代码并不罕见。