2010-08-06 50 views
0

我想要一個確認框添加到該代碼:加入jConfrim休息功能

$('.widget .remove').live('click', function() { //Remove widget from layout 
    $(this).closest('.widget').fadeOut('fast', function() { 
    $(this).remove(); 
    saveLayout(false); 
    }); 
    return false; 
}); 

這是我做過什麼:

$('.widget .remove').live('click', function() { //Remove widget from layout 
jConfirm('Are you sure you want to remove this widget?','Are you sure?',function(r){ 
    if(r) 
    { 
     $(this).closest('.widget').fadeOut('fast', function() { 
     $(this).remove(); 
     saveLayout(false); 
     }); 
     return false; 
    } 
    }); 
}); 

在我開始用它碴,清除功能工作很好,現在它什麼都不做。我知道if(r)正在執行,因爲我在測試時會在代碼中放置測試警報(「消息」)。我不知道jquery(或者java腳本)知道哪裏出了問題。幫幫我?

+0

我不熟悉jConfirm,但也許$(這)不是處理器的同裏。嘗試用$('。widget .remove') – Adam 2010-08-06 17:19:32

+0

代替$(this)一個英勇的努力,但它沒有奏效。 – 2010-08-06 17:30:54

回答

1

這個在main函數中與jConfirm中的this不同。

var $this=$(this); 

然後在jConfirm替換每個(這一點)解決它