@H_403_2@$.ajax({
url : uri,type : 'post',data : {someBooleanVar1: false,subVar: {someBooleanVar2: true}}
});
问题是在服务器上someBooleanVar1和someBooleanVar2将作为字符串“false”和“true”接收,但不能作为“0”和“1”接收.有没有办法自动将布尔参数转换为“1”和“0”?
解决方法
有一个固定版本的@jcubic答案:
@H_403_2@function convertBoolToNum(obj) {
$.each(obj,function(i) {
if (typeof obj[i] == 'object') {
convertBoolToNum(this);
}
else if (typeof obj[i] == 'boolean') {
obj[i] = Number(obj[i]);
}
});
}
$.ajax = (function($ajax) {
return function(options) {
convertBoolToNum(options.data);
return $ajax(options);
};
})($.ajax);