复选框选中以删除子div

时间:2015-04-30 13:21:53

标签: javascript jquery

我正在使用jQuery并删除一个子div,它是来自它的父控件。我首先尝试使用这种方法:

  $("[id^=SelectedUser]:checked").each(function () {
        //.val() contains numberical index of div to remove. 
        $('#SUser' + $(this).val()).remove();
      });

但这并没有删除元素。

我发现这有效:

 $("[id^=SelectedUser]:checked").each(function () {
        $(this).parent().parent().remove();
      });

有人可以向我解释为什么我的原始概念不起作用吗?

2 个答案:

答案 0 :(得分:0)

$this.val()返回复选框的值。你确定这些数字与你的div的ID一致吗?似乎是我能用你的代码找到“错误”的唯一东西。你的数值也是字符串格式正确而不是整数正确吗?

答案 1 :(得分:0)

这是html。

这将生成包含用户信息的子div标签。它们被加载到ID为" SelectedSelections。"

的静态div中



 $("#SelectedSelections").append("<div id='SUser" + counter + "' class='SelectedUsersRow'><div class='RowControl'><input type='checkbox' id='SelectedUser" + counter + "' value='" + index + "' onclick='enableDisableButtons(\"REMOVESELECTIONS\");'/></div><div class='RowContent'>" + $("#displayString" + index).html() + "</div>" +
                     "<input type='Hidden' id='slastName" + counter + "' value='" + $("#lastName" + index).val() + "' />" + "<input type='Hidden' id='sCalledName" + counter + "' value='" + $("#CalledName" + index).val() + "' />" +
                     "<input type='Hidden' id='sEmail" + counter + "' value='" + $("#Email" + index).val() + "' />" + "<input type='Hidden' id='sDom" + counter + "' value='" + $("#Dom" + index).val() + "' />" +
                     "<input type='Hidden' id='sID" + counter + "' value='" + $("#ID" + index).val() + "' />" + "<input type='Hidden' id='sPhone" + counter + "' value='" + $("#Phone" + index).val() + "' /></div>");
&#13;
&#13;
&#13;