0

さて、個々の行またはその親にリンクされたいくつかの子を持つ親行を持つテーブルがあります。その父親または個々の息子を削除するアイコンがあります。アイコンには、削除を確認するモーダル ポップアップ (アラートではなく) が表示されます。うまくいきますが、何度も繰り返す必要があります。モーダルの表示/非表示がこのように機能するため、これを単純化して 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" />&nbsp;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」を持つことができます。$(this).fadeIn('slow'); また、事前に感謝のようなものを使用して、これらの div をフェードインおよびフェードアウトさせたいと思います。

4

1 に答える 1

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);
}

それが明確でない場合は、このチュートリアルを確認してください。

于 2013-01-17T22:05:39.417 に答える