使用js检查是否选中Dynamic CheckBox

时间:2015-08-14 07:15:37

标签: javascript jquery

我有一个动态复选框,我想检查是否选中了复选框。当我选中或取消选中第一个复选框时,它工作正常。如果我取消选中剩余复选框,则会提醒Checked.Pls帮助我克服此问题。< / p>

JQUERY

function CheckRow(ProjectID, BID, LID, PID, ImageID, StatusID) {
    if ($("#chkProjectID").prop('checked') == true) {
        alert('checked');
        Checked(ProjectID, BID, LID, PID, ImageID, StatusID);
    } else {
        alert('Unchecked');
        Unchecked(ProjectID, BID, LID, PID, ImageID, StatusID);
    }
}

HTML

<input type="checkbox" id="chkProjectID"  onclick="CheckRow(ProjectID=' + full.ProjectID + ',BID=' + full.BID+ ',LID=' + full.LID+ ',PID=' + full.PID+ ',ImageID=' + full.ImageID + ',StatusID=' + full.StatusID + ')" />

1 个答案:

答案 0 :(得分:2)

它的发生是因为您只检查第一个复选框。如果您有多个动态创建的复选框,并想检查其是否已选中,请按以下方式更改您的代码:

<input type="checkbox" id="chkProjectID"  onclick="CheckRow(this, ProjectID=' + full.ProjectID + ',BID=' + full.BID+ ',LID=' + full.LID+ ',PID=' + full.PID+ ',ImageID=' + full.ImageID + ',StatusID=' + full.StatusID + ')" />

function CheckRow(_this, ProjectID, BID, LID, PID, ImageID, StatusID) {
       //it will check for current checkbox
       if ($(_this).prop('checked') == true) {
            alert('checked');
            Checked(ProjectID, BID, LID, PID, ImageID, StatusID);
        }
        else {
            alert('Unchecked');
            Unchecked(ProjectID, BID, LID, PID, ImageID, StatusID);
        }
}