我有以下表克隆錶行
<table id="customFields" class="table table-bordered table-hover additionalMargin alignment">
<thead>
<tr>
<th colspan="2"></th>
<th>Some Title</th>
</tr>
</thead>
<tbody>
<tr>
<td><label class="subjectline" for="User1">User NOC M1</label></td>
<td id="slLabel">SLA</td>
<td id="slInput"><input type="text" name="slOptions[User][NOC M1]" class="form-control" id="User1"></td>
<td><a class="addCF" href="javascript:void(0);">+ additional user</a></td>
</tr>
</tbody>
</table>
然後我有以下的JavaScript來添加其他行
$(function() {
$(".addCF").click(function(){
$("#customFields").append('<tr><td></td><td>SL_B</td> <td><input type="text" name="slOptions[User][NOC M1]" class="form-control" id="User1"></td> <td> <a href="javascript:void(0);" class="remCF">Remove</a></td></tr>');
});
$("#customFields").on('click','.remCF',function(){
$(this).parent().parent().remove();
});
});
這目前是我怎麼想它。但是,我遇到了一些問題。
首先,當你第一次看到它時,你會看到標籤SL_A。在克隆版本中,我手動將其設置爲SL_B。所有其他克隆都有SL_B。我想要做的是讓SL_跟着字母表中的下一個字母。所以第三行應該是SL_C。我不太確定我如何才能做到這一點。
我的第二個問題涉及克隆輸入的名稱。目前,它們都具有相同的名稱,例如slOptions[User][NOC M1]
當添加新行時,該名稱應該改變爲獨特的東西,可能使用上面的字母表的附加字母,例如, slOptions[User][NOC M1B]
是否有可能實現這些目標?
我已經設置了Fiddle示範
感謝
謝謝你,偉大的作品。一個問題,如果我添加一行,使其SL_B,然後刪除該行,然後讀取它,然後它具有SL_C。是否有可能再次擁有SL_B?謝謝 –
當然,你可能只需要調整你的刪除按鈕來推回前一封信[類似於這種方法](https://gist.github.com/Rionmonster/745bd50a900c541f0e83d0df0c223cd5)。另一種方法仍然是使用正在使用的字母和未使用的字母來存儲兩個陣列,以便您可以確定哪些已刪除,然後按預期重新使用它們。它最終取決於你的喜好。 –