2014-12-19 63 views
2

我在我的onRender函數中有以下函數,當點擊findall複選框 時,函數會被調用。javascript laravel - 當複選框被選中時調用函數

this.$el.find('.findall').on('click', function(e) { ... }); 

我想知道如何編寫一個函數simillar到上面應該被調用,如果複選框被選中。 (默認情況下我正在檢查這個複選框,但是隻有當我點擊那個框時纔會調用上面的函數,但是我需要基於複選框狀態調用的東西)。

回答

0

如果你想要做這取決於項目是否處於選中還是不不同的操作:

this.$el.find('.findall').each(function() { 
    if ($(this).is(":checked")) { 
     // do action for checked 
    } else { 
     // do action for not checked 
    } 
}); 

如果你想只在每個檢查做動作複選框:

this.$el.find('.findall :checked').each(function() { 
     // do action for checked 
}); 

或者,如果你想這樣做在頁面加載:

$(function() { 
    $('.findall').each(function(){ 
     if ($(this).is(":checked")) { 
      // do action for a checked checkbox 
     } else { 
      // do action for an unchecked checkbox 
     } 
    }); 
}); 
1

你可以試試這個:

this.$el.find('.findall').on('change', function(e) 
{ 
    if($(this).is(':checked')) 
    { 
     // Do your job here... 
    } 
}); 
+0

感謝您的回覆。但是當有變化時會被調用。我希望這個函數被調用onload這個複選框。當這個複選框被顯示而不需要任何改變或者點擊時,應該調用這個函數。 – 2014-12-19 01:42:12

+0

然後使用'$(document).ready(...)'並使用'$('。findall:checked')'。 – 2014-12-19 01:52:50

相關問題