我在各种页面上有几十个ajax调用,我正在尝试整合代码。转到目前为止,我已经完成了很多工作:
$('#doAction1').click(function(){
$.ajax({
type:"POST",
data:data,
url:"someUrl.php",
success:function(result){
$('#results').html(result);
}
});
});
$('#doAction2').click(function(){
$.ajax({
type:"POST",
data:data,
url:"someUrl.php",
success:function(result){
$('#results').html(result);
$('#results').addClass('happy');
}
});
});
$('#doAction3').click(function(){
$.ajax({
type:"POST",
data:data,
url:"someUrl.php",
success:function(result){
alert('you clicked 3');
}
});
});
$('#doAction4').click(function(){
$.ajax({
type:"POST",
data:data,
url:"someUrl.php",
success:function(result){
$('#error').html(result);
errorCounter++;
alert('There was an error');
}
});
});
<input type='button' id='doAaction1' class='someClass'>
<input type='button' id='doAaction2' class='someClass'>
<input type='button' id='doAaction3' class='someClass'>
<input type='button' id='doAaction4' class='someClass'>
成:
function ajax(url,data,id){
$.ajax({
type:"POST",
data:data,
url:url,
success:function(result){
//various actions
}
});
}
$('.someClass').click(function(){
var id = $(this).attr('id');
data = "Data";
//pass some other var for different success actions
ajax('someUrl.php',data,id);
});
我的问题是,我如何设计这个以使我的成功回归不同?
例如,也许在1次调用时我确实想把结果放到某个选择器中,但是如果在另一个选择器上,我想在选择器中添加一些css,或者在成功中做多于1件事呢?