jquery clear the space in div after .remove()
复选框将动态添加到div1:
1 2 3 | $.each(json, function(idx, obj) { $("#tbl1").append('<input type="checkbox" id='+obj.firstId+' onclick=nextPopulate('+obj.firstId+'); >'); } |
选择这些选项后,复选框将动态添加到div2:
1 2 3 | $.each(json, function(idx, obj) { $("#tbl2").append('<label id="chk'+firstId+'"><input type="checkbox" id="'+firstId+'-'+secondId+'"></label>'); } |
号
取消选中div1中的复选框时,将删除在div2中创建的相应复选框(标签元素):
1 2 3 | if(!($('#'+firstId).is(':checked'))) $("[id^=chk"+firstId+"]").remove(); |
标签内容被删除。但是,空间仍然存在。如果我再次在div1中选择,div2中的复选框将仅在此空白空间之后创建。
如何在删除内容的同时删除空间。删除后刷新/重新加载DIV是否有效?
如果是,那么语法如何。我不想再访问数据库/调用onclick fn。只需刷新DIV即可删除在label元素的.remove()期间创建的空间。
第一个答案就行了。要删除
1 | $('br').remove(); // https://stackoverflow.com/questions/2513848/how-to-remove-nbsp-and-br-using-javascript-or-jquery |
如果你有更多的身份证:
1 | $("[id^=chk"+firstId+"]").remove('br'); |
。
1 | .remove() |
会有用的。但要确保所有的部件特别是
1 | <br/> |
。
etc被放在父元素中并被移除。然后空间问题得到解决。下一个附加将附加到DIV中的正确空间。
".remove()"函数是从调用的元素中移除子元素,而不是移除调用的元素。因此,使用下面的代码,只删除复选框输入元素,而标签元素仍然保留。
1 | $("[id^=chk"+firstId+"]").remove(); |
调用remove()的元素应为"tbl2",并将参数"[id^=chk"+firstid+"]"发送到函数中,以定义将要删除的子元素,如下所示:
1 | $("#tbl2").remove("[id^=chk"+firstId+"]"); |
号