我未能使用以下语法在 ajax 中编写条件。
var num = 1;
$.ajax({
type: "POST",
//condition starts
if (num === 1){
url: url1,
data: data1,
}else{
url: url2,
data: data2,
}
//condition finishes
success: success,
dataType: dataType
});
但这种方式有效。
var num = 1;
if(num === 1){
$.ajax({
type: "POST",
url: url1,
data: data1,
success: success,
dataType: dataType
});
}else{
$.ajax({
type: "POST",
url: url2,
data: data2,
success: success,
dataType: dataType
});
}
第二种方法不太理想,因为它会重复我的代码。 我的第一个脚本语法错误吗?有人可以指出吗?谢谢
最佳答案
is my first script in a wrong syntax?
是的,绝对是。您只是在对象文字的中间插入 if-else-statement 部分。你应该使用这样的东西:
var params = {
type: "POST",
success: success,
dataType: dataType
};
if (num == 1) {
params.url = url1;
params.data = data1;
} else {
params.url = url2;
params.data = data2;
}
$.ajax(params);
或者如果你想内联它们,你可以使用 ternary operator :
$.ajax({
type: "POST",
url: (num == 1) ? url1 : url2,
data: (num == 1) ? data1 : data2,
success: success,
dataType: dataType
});
(如果你不想重复条件,将其 bool 结果存储在一个变量中)
关于javascript - $.ajax if 条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14762775/