2
我有一個圖像列表。每個圖像都有一個鏈接來刪除它:後ajax請求我的函數調用它不能正常工作,只是在頁面刷新後工作
echo '<a class="delete j_bannerdelete" id="'.$result_banner['id'].'" href="#">Delete</a> ';
而且我用jQuery Ajax刪除這個圖像。
但是,當我只有一個圖像我想隱藏這個「刪除」鏈接。
在我的js文件所以,我有我的$(function(){});
內的第一件事就是:
hidelink(1); //my function to hide if I have only 1 image
它工作正常,當我接取我的網頁。如果我只有一個像我的「刪除」鏈接不要出現。
但是,當我有我的兩個最後的圖像,我點擊刪除一個,當我點擊刪除我想隱藏我的「刪除」鏈接在該部分,它不工作,只是在刷新頁面時工作。
你明白爲什麼會發生這種情況嗎?
我的代碼刪除圖像是這樣的:
$(function(){
var banid = null;
$("a#nao").click(function(event){
event.preventDefault();
$('.confirm').fadeOut("slow",function(){
$('.delete_dialog').fadeOut("slow");
});
$('.bannerli li[id="'+ banid +'"]').css('background','#f5f5f5');
banid = null;
});
$("a#delete").click(function(event){
event.preventDefault();
if (!banid) return;
$.post(url,{action:'delete',id: banid},function(){
window.setTimeout(function(){
$('.bannerli li[id="'+ banid +'"]').fadeOut("slow");
},500);
$('.confirm').fadeOut("fast",function(){
$('.delete_dialog').fadeOut("fast");
});
hidelink(2); //here I call my function every time I delete
});
});
$('.bannerli').on('click','.j_bannerdelete',function(){
banid = $(this).attr('id');
$('.bannerli li[id="'+ banid +'"]').css('background','red');
$('.delete_dialog p').text('You really want to remove this image?');
$('.delete_dialog').fadeIn("slow",function(){
$('.confirm').fadeIn("slow");
});
return false;
})
});
這是隱藏「刪除」鏈接功能:
function hidelink($value) {
if($('.bannerli li').length <= $value) {
$('.j_bannerdelete').hide();
}
}
它看起來像你剛剛淡出出來不刪除他們,這個好,如果你將錯誤處理上
$post
呼叫這樣一個添加代碼。嘗試實際刪除它們。 – Musa 2014-09-01 01:34:48