如何在xdr中使用get方法传递数据

时间:2012-03-22 09:30:26

标签: javascript cross-domain

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

使用jquery ajax的get方法的代码片段就像 -

$.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();

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

请帮我解决这个问题。

1 个答案:

答案 0 :(得分:0)

这一切都发生在“.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友好的参数,然后将其发送到服务器。

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