【问题标题】:How to pass data while using get method in xdr如何在 xdr 中使用 get 方法时传递数据
【发布时间】:2012-06-19 10:06:22
【问题描述】:

由于 IE 不支持跨域问题,我们必须使用 xdr 使用 get 或 post 方法,我的问题是,我不知道如何在使用 xdr 的 get 方法时传递数据。

使用 jquery ajax 的 get 方法的代码 sn-p 就像 -

$.ajax({
    type: 'GET',
    cache: false,
    url: site_url,
    data: params,
    success: onsuccess,
    error:onError
});

但是假设如果我为 xdr 编写这段代码,它会像 -

var xdr = new XDomainRequest();
xdr.CacheControl = "no-cache";
xdr.open("get", site_url);
xdr.onload = function () { 
                   var data = $.parseJSON(xdr.responseText);
                   onsuccess(data);
             }
xdr.onerror = function() {alert('err');};
xdr.send();

现在在这,不知道往哪里传数据!!!

请帮我解决这个问题。

【问题讨论】:

    标签: javascript cross-domain


    【解决方案1】:

    这一切都发生在“.open”方法中。

    假设您想向请求传递一些 JSON 或对象。

    就这样吧……

    var my_request_data = {
       "whatever" : "whatever",
       "again"    : "whatever again",
       "you get"  : "the point..."
    };
    
    my_request_data = $.param(my_request_data);
    
    xdr.open("get", "http://url.com/to/get/or/post/too/" + my_request_data);
    

    jQuery 将 JSON 对象转换为 URL 友好的参数,然后将其发送到服务器。

    这就是你传递数据的方式!

    【讨论】:

      猜你喜欢
      • 2012-05-13
      • 1970-01-01
      • 2015-02-02
      • 1970-01-01
      • 2017-03-08
      • 1970-01-01
      • 1970-01-01
      • 2023-01-27
      • 1970-01-01
      相关资源
      最近更新 更多