简单的复选框在单击时不触发jQuery代码

时间:2011-10-12 13:40:04

标签: jquery

在此页面上,我勾选了一个复选框:http://www.problemio.com

复选框如下所示:

<input class="problem_follow_checkbox" TYPE="checkbox" NAME="follow_problem" /> Follow this problem

在jQuery中我添加了这个:

$("#problem_follow_checkbox").click (function ()
{
    alert ("clicked cvheckbox for following problem");
    var thisCheck = $(this);

    if (thischeck.is (':checked'))
    {
        // Do stuff
                alert ("yes checjed");
    }
    else
    {
        alert ("not checjed");
    }
});

似乎超级直接,但由于某些原因选中复选框时,不会调用此jQuery代码。可能发生的任何原因?

谢谢!

2 个答案:

答案 0 :(得分:2)

使用:

$(".problem_follow_checkbox").click (function ()
{
    alert ("clicked cvheckbox for following problem");
    var thisCheck = $(this);

    if (thisCheck.is (':checked'))
    {
        // Do stuff
                alert ("yes checjed");
    }
    else
    {
        alert ("not checjed");
    }
});

$(“#problem_follow_checkbox”)正在寻找ID problem_follow_checkbox,因此$(“。problem_follow_checkbox”)将运行良好。

答案 1 :(得分:1)

您需要使用以“。”开头的选择器。如果你选择“阶级”归因。 “#”前缀用于按id选择。 所以,要么如上所述:

$(".problem_follow_checkbox").click( ....

或将输入元素更改为:

<input id="problem_follow_checkbox"

然后按

选择
$("#problem_follow_checkbox").click (