我想把我的两个功能合二为一。 他们现在看起来像这样:
function MeYouFriend(){
$.ajax({
type: "POST",
url: "misc/AddFriend.php",
data: {
mode: 'ajax',
friend: 'ignore',
uID : $('#uID').val(),
fID : $('#fID').val()
},
success: function(msg){
$('#friendsPop').jGrowl('close');
}
});
}
function MeYouFriendY(){
$.ajax({
type: "POST",
url: "misc/AddFriend.php",
data: {
mode: 'ajax',
friend: 'confirm',
uID : $('#uID').val(),
fID : $('#fID').val()
},
success: function(msg){
$('#friendsPop').jGrowl('close');
}
});
}
区别仅在于朋友:'确认'和朋友:'忽略',我如何将它们组合在一起并使其变得简单?
答案 0 :(得分:2)
将您的电话改为
MeYouFriend(true) //To Confirm
MeYouFriend(false) //To Ignore
比改变接受参数的功能。
function MeYouFriend(confirm){
var c = confirm ? 'confirm' : 'ignore';
$.ajax({
type: "POST",
url: "misc/AddFriend.php",
data: {
mode: 'ajax',
friend: c,
uID : $('#uID').val(),
fID : $('#fID').val()
},
success: function(msg){
$('#friendsPop').jGrowl('close');
}
});
}
替代略微更紧凑的版本
function MeYouFriend(confirm){
$.ajax({
type: "POST",
url: "misc/AddFriend.php",
data: {
mode: 'ajax',
friend: confirm ? 'confirm' : 'ignore',
uID : $('#uID').val(),
fID : $('#fID').val()
},
success: function(msg){
$('#friendsPop').jGrowl('close');
}
});
}
答案 1 :(得分:1)
您可以将字符串值作为参数传递:
function MeYouFriend(friend){
$.ajax({
type: "POST",
url: "misc/AddFriend.php",
data: {
mode: 'ajax',
friend: friend,
uID : $('#uID').val(),
fID : $('#fID').val()
},
success: function(msg){
$('#friendsPop').jGrowl('close');
}
});
}
然后你打电话
MeYouFriend('ignore')
或MeYouFriend('confirm')
答案 2 :(得分:-1)
你可以添加一个参数,并根据它的内容决定做什么:
function MeYouFriend(doConfirm){
$.ajax({
type: "POST",
url: "misc/AddFriend.php",
data: {
mode: 'ajax',
friend: doConfirm ? 'confirm' : 'ignore',
uID : $('#uID').val(),
fID : $('#fID').val()
},
success: function(msg){
$('#friendsPop').jGrowl('close');
}
});
}
但是,您可能希望创建两种访问方法,使您的代码更易于阅读,您或其他人不必关心参数内容:
function MeYouFriendConfirm() {
MeYouFriend(true);
}
function MeYouFriendIgnore() {
MeYouFriend(false);
}