这是我对这个问题的了解:
我们有一个 ajax 函数,我们可以向它传递一个具有如下属性的对象:
var ajaxRequest = {};
ajaxRequest['type'] = 'POST';
ajaxRequest['async'] = false;
ajaxRequest['datatype'] = 'json';
ajaxRequest['url'] = '/Query/getMydata';
$.ajax(ajaxRequest);
这些属性之一是由键/值对组成的数据参数:
ajaxRequest['data'] = {color: 'red' , name: 'Steve' }
我试图做这样的事情:
var oData = [];
oData['color'] = 'yellow';
oData['name'] = 'Fred';
ajaxRequest['data'] = oData;
但它不起作用。
所以我的问题是:有一个对象可以分配给“数据”参数,还是我被迫用连接构建字符串?
编辑==============
也许我没有解释,我知道可以通过这样的代码创建该方法:
var ajaxRequest = {
type: 'POST',
async: false
....
};
但我正在使用对象和属性,因为我需要使方法“通用”,然后我将添加“if”,如下所示:
function ajaxReq(data){
var ajaxRequest = {};
if( !data.isEmpty()){
ajaxRequest['data'] = data;
}
ajaxRequest['type'] = 'POST';
ajaxRequest['async'] = false;
ajaxRequest['datatype'] = 'json';
ajaxRequest['url'] = '/Query/getMydata';
...
$.ajax(ajaxRequest);
}