1

Jquery ダイアログに存在するテーブルに行を動的に追加しています。ダイアログが閉じられるたびに、このテーブルの最初の行を除くすべてをクリアして、ダイアログが再度開かれた場合に新しい行のセットのみが表示されるようにします。

私の目的は、このダイアログが開かれるたびに空のテーブルを持ってくることです。

ここに私のダイアログコードがあります

$( "#personPmt" ).dialog({
    autoOpen: false,
    width: 675,
    modal: true,
    position: { my: "left top", at: "left bottom", of: $("#pmtDetails") },
    close: function() {
      $('#personPmtTable').remove("tr:gt(0)");
     }
  });

そして、ここに私のダイアログがあります

<div id="personPmt" title="Personal Payment">
      <table border="0" cellpadding="0" cellspacing="0" class="pmtEntry" id="personPmtTable">
        <tr>
          <th style="display:none">ID</th>
          <th class="cell_date">DOS</th>
          <th class="cell_code">CPT</th>
          <th class="cell_name">Description</th>
          <th class="cell_amt">Billed</th>
          <th class="cell_amt">Payment</th>
          <th class="cell_amt">Balance</th>
          <th class="cell_amt">New Balance</th>
        </tr>            
      </table>
    </div>
4

2 に答える 2

2

ヘッダーをthead要素でラップする

<div id="personPmt" title="Personal Payment">
  <table class="pmtEntry" id="personPmtTable">
    <thead>
      <tr>
        <th style="display:none">ID</th>
        <th class="cell_date">DOS</th>
        <th class="cell_code">CPT</th>
        <th class="cell_name">Description</th>
        <th class="cell_amt">Billed</th>
        <th class="cell_amt">Payment</th>
        <th class="cell_amt">Balance</th>
        <th class="cell_amt">New Balance</th>
      </tr>
    </thead>
    <tbody>
    </tbody>        
  </table>
</div>

そして、そのままtbody残すものをすべて削除しますthead

$("#personPmtTable tbody tr").remove();

に新しい行を追加していることを確認してくださいtbody。:)

于 2013-01-11T14:21:49.790 に答える
1

これを試して

 $('#personPmt >  tr').not(':first').remove();
于 2013-01-11T14:30:56.587 に答える