【问题标题】:Dojo xhrget responseDojo xhrget 响应
【发布时间】:2011-08-23 17:44:41
【问题描述】:

我在 dojo 中向我的 servlet 发出 xhrget 请求。响应是一个 json 对象或 json 数组。

但是当打印它作为 Object[] 对象给出的响应时。如何在发送时获取 json 对象?

【问题讨论】:

    标签: ajax json dojo


    【解决方案1】:

    “打印”响应是什么意思?如果将对象转换为字符串(例如通过 document.write),那么它会呈现为奇怪的[object Object]

    您可以使用 console.log 而不是将其打印到调试控制台,这样做

    press F12 on Chrome / IE to make that appear
    

    【讨论】:

    • 不,我只是发出警报,看看我是否正确接收了内容。我需要通过响应更新数据存储的内容。怎么办?
    • @john:正如我提到的,警报将事物转换为字符串。你已经有了你需要的数组/对象,唯一的问题是你如何打印它。
    【解决方案2】:

    您可能需要在 ioArgs 中使用“json”指定“handleAs”属性来将响应文本解析为 Json 对象:

    var xhrArgs = {
            url: "/foo/bar.json", // uri to your remote json resource
            handleAs: "json",
            load: function(data, ioargs) {
                // data is the parsed JavaScript object you want 
            },
            error: function(error, ioargs) {
    
            }
        }
    
    //Call the asynchronous xhrGet
    var deferred = dojo.xhrGet(xhrArgs);
    

    或者您只得到包含 json 表示的响应字符串。然后在你的加载回调函数中用 dojo.toJson 解析它:

    var obj = dojo.toJson(data);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-03-12
      • 2011-07-17
      • 2012-04-01
      • 1970-01-01
      • 2012-04-07
      • 2012-12-07
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多