我试图淡化beforeSend中的背景颜色,并使用ajax成功淡出fadeOut。我不知道自己做错了什么。求助。
var data={
action: 'tag_user_update',
postSearchNonce : MyAjaxSearch.postSearchNonce,
tag : $(this).closest("a").text(),
users_id : $("#users_id").val()
}
$.ajax({
url: MyAjaxSearch.ajaxurl,
type:'POST',
cache: false,
data:data,
beforeSend: function() {
$('.tag_link').animate({ backgroundColor:'yellow'},'slow');
},
success: function(data){
$('.tag_link').animate({ backgroundColor:'white'},'slow');
}
});//ajax

答案 0 :(得分:1)
确保您的ajax方法遵循此结构$ .ajax({})。done({})或$ .ajax({})。success({})。您已在.ajax({})请求中包含回调函数.success()。
正如您在下面的示例中所看到的,.dj()调用中不包含.done()。 .success()也不应该是内部的。 done()和.success()都是在ajax()请求之后发生的回调函数。此外,.success()已被弃用,因此.done()在下面的示例中具有相同的效果
来自http://api.jquery.com/jquery.ajax/
$.ajax({
url: "http://fiddle.jshell.net/favicon.png",
beforeSend: function( xhr ) {
xhr.overrideMimeType( "text/plain; charset=x-user-defined" );
}
})
.done(function( data ) {
if ( console && console.log ) {
console.log( "Sample of data:", data.slice( 0, 100 ) );
}
});