根据下拉选择选中并取消选中复选框

时间:2018-05-09 09:53:39

标签: jquery

我有一个下拉列表。将取消选中下拉列表旧选项的选择更改,并将选中新复选框。我如何使用jquery?

数据来自数据库。

我有这段代码

$("#roles").change(function() {

      $.ajax({
          url: '@Url.Action("GetPermissionForSelectedRole", "home")',
          type: "get",
          cache: false,
          data: {
            RoleId: roleid
          },
          success: function(alldata) {
            debugger;
            $.each(alldata, function(key, value) {
                debugger;
                var aa = value.Modelid;
                var bb = value.Actionid;
                var abc = aa + '-' + bb;
                var allcheckboxdata = [];
                $("input:checkbox[name=chkboxsecond]").each(function() {
                  allcheckboxdata.push($(this).attr('data-controllername'));
                })
                $.each(allcheckboxdata, function(ab, alchkbox) {
                    debugger;
                    var aabb = alchkbox;
                    if (abc === aabb) {
                      $('input:checkbox[data-controllername="' + abc + '"]').attr('checked', true);
                    })
                })
            }
          });
      });

这是我的复选框html代码 -

@foreach (var data in ViewBag.allmodel) {
 <tr>
   <td class=@data.Id>@data.Controller_Name</td>
   @foreach (var ac in ViewBag.AllAction) { 
   <td>
     <div class="checkbox"> 
       <label>
         <input type="checkbox" class="allchkbox" 
          data-controllername="@data.Id-@ac.Id" 
          name="chkboxsecond" value=@data.Id>
       </label> 
     </div>
   </td>
   }
}

1 个答案:

答案 0 :(得分:0)

没有Minimal, Complete, and Verifiable example可以玩,我假设你想这样做:

$("input:checkbox[name=chkboxsecond]").each(function() {
  this.checked = $(this).data("controllername") == abc;
})