2009-12-06 8 views
13

ユーザーがチェックボックスをオンにしたときにアクションを実行したいが、それを動作させることができない、何が間違っているのか?JQueryでチェックボックスをオンにしたときにアクションを実行するにはどうすればよいですか?

基本的に、ユーザーは自分のページに行き、ボックスをチェックしてから、警告がポップアップします。

if($("#home").is(":checked")) 
{ 
     alert(''); 
} 

答えて

24

あなたが探しているのは、イベントと呼ばれます。 jQueryのはとても

$("#home").click(function() { 
    // this function will get executed every time the #home element is clicked (or tab-spacebar changed) 
    if($(this).is(":checked")) // "this" refers to the element that fired the event 
    { 
     alert('home is checked'); 
    } 
}); 
+0

+1と私よりも速くています。 –

+0

コメントありがとうJoel! –

+0

何年も後にあなたの答えが私を助けました!!ありがとう! – AxleWack

4

あなたはここで説明.clickイベントを使用する必要があるようなメソッドを結合単純なイベントが用意されていますhttp://docs.jquery.com/Events/click#fn

ので

$("#home").click(function() { 
    if($("#home").is(":checked")) 
    { 
     alert(''); 
    } 
}); 
+0

ありがとうございますJeff –

17

を実際にchange()機能があるため、この解決のためにはるかに優れていますスクリプトを介してすべてのチェックボックスを選択するなど、javascriptで生成されたアクションに対して機能します。良いコメント

$('#home').change(function() { 
    if ($(this).is(':checked')) { 
     ... 
    } else { 
     ... 
    } 
}); 
2
$("#home").click(function() { 
    var checked=this.checked; 
    if(checked==true) 
     { 
     // Stuff here 
     } 
    else 
     { 
     //stuff here 
     } 
}); 
1
$("#home").change(function() { 
    if(this.checked){ 
     alert("The Check-box is Checked"); // Your Code... 
    }else{ 
     alert("The Check-box is Un-Checked"); // Your Code... 
    } 
}); 
+0

このコードは質問に答えるかもしれませんが、どのようにして問題が解決されたのか、および/または理由が解明されれば、回答の長期的価値が向上します。 – Badacadabra

関連する問題