我有一个处理不同类型数据的函数。
为此,需要添加或删除
"processData: false,
contentType: false,"
在ajax-call中。
我第一次尝试使用true / false数组,失败了。我怎么能这样做?
这是我必须动态改变的电话
$.ajax({
//url: '".$global['serverurl']."module/".$m['ID']."/code/cms_data.php?job='+jobid+'&ds='+id+'&new='+jobnew+'&refreshid='+refreshid,
url: '".$global['serverurl']."module/".$m['ID']."/code/cms_data.php',
//type: 'PUT',
type: 'POST',
data: formData,
processData: false,
contentType: false,
success: function(result) {...
如果我尝试使用建议功能(@Lajos Arpad),就像这样
function getAJAXcall(processData, contentType, formData, callback) {
var returnValue = {
url: '".$global['serverurl']."module/".$m['ID']."/code/cms_data.php',
type: 'POST',
data: formData,
success: callback
};
if (processData === true){ returnValue.processData = processData; }
if (contentType === true){ returnValue.contentType = contentType; }
return returnValue;
}
它不会工作 - 如果我手工编码它会工作,所以我认为在上面的函数是一个小错误?
function getAJAXcall(processData, contentType, formData, callback) {
var returnValue = {
url: '".$global['serverurl']."module/".$m['ID']."/code/cms_data.php',
type: 'POST',
data: formData,
processData: false,
contentType: false,
success: callback
};
return returnValue;
}
答案 0 :(得分:1)
您可以创建function
来生成对象
function getAJAXObject(processData, contentType, formData, callback) {
var returnValue = {
url: '".$global['serverurl']."module/".$m['ID']."/code/cms_data.php',
type: 'POST',
data: formData,
success: callback
};
if (processData === true) returnValue.processData = processData;
if (contentType === true) returnValue.contentType = contentType;
return returnValue;
}
并像这样使用它:
$.ajax(getAJAXObject(false, true, formData, function(result) {/*Something*/}));
答案 1 :(得分:0)
基于Lajos Arpad的建议
function getAJAXcall(processData, contentType, formData, callback) {
var returnValue = {
url: '".$global['serverurl']."module/".$m['ID']."/code/cms_data.php',
type: 'POST',
data: formData,
success: callback
};
if (processData === false){ returnValue.processData = processData; }
if (contentType === false){ returnValue.contentType = contentType; }
return returnValue;
}
重要的区别是" === false"不是真的。
True是标准的,所以它必须添加,如果它应该是假的!