mardi 7 mars 2017

jQuery Set Checkbox to be Checked based on 3 conditions data

Is it possible to check checkbox based on data-id and data-tipe and data-group using jQuery on my case below:

Updated Question

success: function (jsonStr)
{
    var len = jsonStr.length;
    for(var i=0; i<len; i++)
    {
        var moduleID = jsonStr[i].moduleID;
        var moduleName = jsonStr[i].moduleName;
        var projectName = jsonStr[i].projectName;
        var groupID = jsonStr[i].groupID;
        var chk = jsonStr[i].chk;
        var chkModule = jsonStr[i].chkModule;
        var group = jsonStr[i].group;

        var tr_str = "<tr id='"+jsonStr[i].moduleID+"'>" +
            "<td>" + projectName + "</td>" +
            "<td>" + moduleName + "<input type='text' name='chkTipeInput[]' class='chkTipeInput"+jsonStr[i].moduleID+"'/></td>" +
            "<td align='center'><input type='checkbox' data-id='"+jsonStr[i].moduleID+"' data-group='"+jsonStr[i].groupID+"' data-tipe='CREATE' value='CREATE'/></td>" +
            "<td align='center'><input type='checkbox' data-id='"+jsonStr[i].moduleID+"' data-group='"+jsonStr[i].groupID+"' data-tipe='EDIT' value='EDIT'/></td>" +
            "<td align='center'><input type='checkbox' data-id='"+jsonStr[i].moduleID+"' data-group='"+jsonStr[i].groupID+"' data-tipe='VIEW' value='VIEW'/></td>" +
            "<td align='center'><input type='checkbox' data-id='"+jsonStr[i].moduleID+"' data-group='"+jsonStr[i].groupID+"' data-tipe='DELETE' value='DELETE'/></td>" +
            "</tr>";

            $('.dataShow2').show();
            $("#tData tbody").append(tr_str);
    }

    $(":checkbox").each(function() {
       $(this).prop("checked", $(this).attr("data-id") == chkModule && $(this).attr("data-tipe") == chk && $(this).attr("data-group") ==   group )
    })
})

Array for:

chk       = CREATE,EDIT,  EDIT,  VIEW
chkModule = MD0003,MD0003,MD0002,MD0002
group     = GR0001,GR0001,GR0001,GR0001

Means if :

if data-id="1" and data-tipe="create" and data-group="a" then check the checkbox




Aucun commentaire:

Enregistrer un commentaire