好的,所以我有一个包含单个行或父行的表,其中有一些子项链接到该父项。我有图标删除父亲或个别儿子。图标将显示模式弹出(而不是警报)以确认删除。它有效,但我将不得不重复它。我认为这可以简化为查找ID或类,因为模态显示/隐藏以这种方式工作。提前谢谢。
<script>
function delVesselAll(){
$("#vessel_tab #father1").remove();
$("#vessel_tab .son1").remove();
document.getElementById(id).style.display = 'block';
};
function delVesselAll2(){
$("#vessel_tab #father2").remove();
$("#vessel_tab .son2").remove();
document.getElementById(id).style.display = 'block';
};
</script>
我的HTML:
<td class="cell_50">
<a style="text-decoration:none;" onclick="showModal('delAll1')"><img src="images/delete-row-icon1.png" title="Delete this row" height="12" width="12" class="father1Del" id="father1Del"/></a>
</td>
<div class="delModal" style="z-index:999999; margin-left:200px; margin-top:30px; display:none" id="delAll1">
<img src="images/warning.png" /> Are you sure you want to delete vessel and the corresponding tanks?<br />
<input type="button" value="Cancel" class="hide" onclick="hideModal('delAll1')"/>
<input type="button" value="Delete" onclick="delVesselAll()"/>
</div>
所以我基本上有很多行做同样的事情,可以有类或ID“father1”“father2”“son1”“son2”。此外,我希望这些div可以使用类似$(this).fadeIn('slow');
之类的内容淡入淡出
提前谢谢。
答案 0 :(得分:4)
您可以传入变量(可能通过循环,但这取决于您的数字的生成方式):
function delVesselAll(num){
$("#vessel_tab #father" + num).remove();
$("#vessel_tab .son" + num).remove();
document.getElementById(id).style.display = 'block';
};
然后称之为:
delVesselAll(1);
delVesselAll(2);
如果您的数字是可预测的和连续的,您可以循环迭代它们:
for (var i = 1; i < $("[id^='father']").length; i++) {
delVesselAll(i);
}
如果不清楚,您可能需要查看此tutorial。