我不知道在发送功能之前怎么写 以下代码
$.post(
"<?=URL?>filter-subcat.php",
{
service:service_arr,
facility:facility_arr,
product:product_arr,
location:location_arr
},
function(data){
var result = $('<div />').append(data).find('#result').html();
$("#result1").html(result);
$("#result1").addClass('active');
$("#loader").html("");
$("#shops").html(data);
},
function(beforeSend)
{
$(".modal_1").show();
$(".fade_1").show();
},
function(complete){
$(".modal_1").hide();
$(".fade_1").hide();
});
});
答案 0 :(得分:0)
您不能将beforeSend
与$.post()
一起使用,而是可以使用.ajaxStart()/.ajaxComplete()
方法,但这些方法应绑定到document
而不是元素:
$(document).ajaxStart(function(){
$(".modal_1, .fade_1").show();
}).ajaxComplete(function(){
$(".modal_1, .fade_1").hide();
});
如果您想使用beforeSend
,则必须使用$.ajax()
:
$.ajax({
url:"",
type:"",
dataType:"",
beforeSend:function(){},
success:function(){},
error:function(){},
complete:function(){}
});
答案 1 :(得分:0)
您应该阅读Jquery文档:
http://api.jquery.com/jquery.post/
http://api.jquery.com/jquery.ajax/
如你所见,你必须使用$ .ajax()函数,实际上你的代码是两者兼而有之的错误
$.ajax( {
method: "POST",
url: "<?=URL?>filter-subcat.php",
data: {
service:service_arr,
facility:facility_arr,
product:product_arr,
location:location_arr
},
done:function(data){
var result = $('<div />').append(data).find('#result').html();
$("#result1").addClass('active').html(result);
$("#loader").html("");
$("#shops").html(data);
},
beforeSend:function(){
$(".modal_1,.fade_1").show();
},
always:function() {
$(".modal_1,.fade_1").hide();
},
error:function(jqXHR,textStatus,errorThrown){
alert( "error" );
console.log(jqXHR);
console.log(textStatus);
console.log(errorThrown);
}})
答案 2 :(得分:0)
使用以下格式
$.ajax({
beforeSend: function() {
//code to execute before sending request
}, //Show spinner
complete: function() {
// code to execute after ajax completion
},
url: url,
type: 'POST',
dataType: 'json',
headers: { //if any},
data: {},
success: function (data){
},
error : function (data){
}
});