在 JavaScript 中通过 innerHTML 从列表中删除项目
Remove items from a list by innerHTML in JavaScript
我是新来的,我被困在我的项目中......
我需要从电子商务的购物车中排除商品...
这个购物车显示在Fancybox的iframe内。
它可以工作,但在Chrome中视觉上却不起作用。在火狐和IE中,它工作正常...
我的物品在div 中命名为div_1、div_2、div_3......
<div id="div_1">
content...
</div>
<div id="div_2>
content...
</div>
<div id="div_3>
content...
</div>
为了滚动页面,我将所有内容放在一个带有样式的主div 中。
style="overflow: hidden; width:820px; height:auto;"
因为滚动是由 iframe(auto) 控制的,而我的主要div 定义了 widht 的值,并且高度是自动的以适应我的内容......
在divs中,我有一个来自产品,名称,价格的img和一个带有此JS的删除按钮:-
onClick="removeItem(<%=arrayIndexdiv%>)"
和功能:-
<script>
function removeItem( itemid ) {
document.getElementById('div_' + itemid ).innerHTML = "";
}
</script>
换句话说,功能只是删除div,将它们从页面中排除......
当我的列表大于 iframe 大小时,将显示垂直滚动条。
当我单击删除时,iten 在所有棕色服务器中都是相应的,但在 Chrome 中,iframe 的大小不会改变,并且在页脚之前,我的所有项目上方都有一个空白区域。
在IE和Mozilla中没关系,空间没有出现,但是在Chrome中它在那里......
我不知道我是否可以在这里放URL以提供更多帮助?如果可以,请告诉我!
谁能帮我?
对不起我的英语!
谢谢你们!
你想从DOM
中删除元素,而不仅仅是覆盖div
的内容。
innerHTML
属性设置或获取描述元素后代的 HTML 语法。在您的情况下,您只是设置div
内容:
document.getElementById('div_' + itemid ).innerHTML = "";
如果要从DOM
中删除元素:
function removeItem( itemid ) {
var element = document.getElementById('div_' + itemid ); // will return element
element.parentNode.removeChild(element); // will remove the element from DOM
}
此外,style="overflow: hidden; width:820px; height:auto;"
将隐藏溢出的div
但不会滚动它。
如果要滚动,可以设置overflow:scroll
。
你的问题是,由于div 标签是块元素,它们仍然占用父div 中的空间。这样:
var element = document.getElementById("div_" + itemid);
element.parentNode.removeChild(element);
此外,此操作在jquery中更简洁一些。您可能需要研究它以进行进一步的 DOM 操作。
- 要求输入在数据列表中
- 从javascript创建一个列表
- 如何使用jQuery选择下拉列表的值
- 将输入字段中的文本提交到我的数据库,同时将其添加到我的列表中
- 将jsp文件下拉列表中的选定项分配给一个java变量(比如String selection)
- Javascript按钮下拉列表
- 如何使用json将对象列表从java转换为javascript
- 区分JSON中的矩阵和列表列表
- 转义符不能与innerHTML一起使用
- jQuery表单添加不适用于下拉列表
- 用每小时的差值填充数组/列表-从下拉列表中给定两个时间值
- 接受不在列表中的值-引导组合框
- 如何使用javascript从下拉列表中选择onchange并将其放置在innerHTML中
- 在 JavaScript 中通过 innerHTML 从列表中删除项目
- 将innerHTML从列表中的一项复制到元素的内容中
- 在jquery mobile中使用innerhtml创建一个列表
- 为什么我不能用Javascript innerHTML属性更新HTML列表项?
- 如何使用getElementById和innerHTML将这个数组变成一个列表?
- innerHTML列表项无法拖动
- 使用innerhtml填充下拉列表