いくつかの変更開始のマークアップで
、クラスaddbtn
とdelbtn
を追加も削除ボタン
<td>
<input type="button" class="button mt5 addbtn" value="Add another activity" id="button1" name="button2" />
</td>
<td>
<input type="button" class="button mt5 delbtn" value="Delete" id="deleteRowButton" name="deleteRowButton" style="display: none"/>
</td>
その後
$('#lastYear').on('click', '.delbtn', function() {
$(this).closest('tr').remove()
});
var newIDSuffix = 2;
$('#lastYear').on('click', '.addbtn', function() {
var thisRow = $(this).closest('tr')[0];
$(thisRow).find('.delbtn').show();
var cloned = $(thisRow).clone();
cloned.find('input, select').each(function() {
var id = $(this).attr('id');
id = id.substring(0, id.length - 1) + newIDSuffix;
$(this).attr('id', id);
});
cloned.insertAfter(thisRow).find('input:text').val('');
cloned.find('.delbtn').hide();
cloned.find("[id^=lastYearSelect]")
.autocomplete({
source: availableTags,
select: function (e, ui) {
$(e.target).val(ui.item.value);
setDropDown.call($(e.target));
}
}).change(setDropDown);
$(this).remove();
newIDSuffix++;
});
デモを隠しますこれです!あなたが他のすべての行のテンプレートとして最初の行を使用したいが、他のすべての行に削除したくないので
if($("table tr").length > 1) {
$(this).parent().parent("tr").remove(); }
'ID = "ボタン1" 名前= "Button2を"' !!? –
なぜ最初の行を残しておきたいのですか? – MervS
@ nyde1319常に少なくとも1つのデータがある行が存在する必要があるため、最初の行を最小限に保つ必要があります。 – user982124