0
Мне нужно использовать jquery для добавления и удаления полей ввода по выбору пользователя из выпадающего меню. Я могу выполнить функцию добавления полей ввода. Но запутался в удаленной части. Может ли кто-нибудь дать мне несколько советов? Вот demo HTML код:jquery создавать и удалять поля на основе выбора из выпадающего меню
<div class="form-fields">
<table>
<tr><th><label for="id_NOA">Number of Applications:</label></th><td><select name="NOA" id="id_NOA">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
</select></td></tr>
<tr><th><label for="id_Ap_m">Application method 1:</label></th><td><select name="Ap_m" id="id_Ap_m">
<option value="" selected="selected">Select an application method</option>
<option value="1">Aerial</option>
<option value="2">Ground Sprayer</option>
</select></td></tr>
<tr><th><label for="id_Ar">Application rate:</label></th><td><input type="text" name="Ar" value="1" id="id_Ar" /></td></tr>
</table>
</div>
JQuery код:
$(document).ready(function() {
i = 2;
$("label[for='id_Ar']").html('Application rate 1:');
$('#id_NOA').change(function() {
var count_c = $(this).val();
while (i <= count_c) {
if (i <= count_c) {
$('<tr><th><label for="id_Ap_m">Application method ' + i + ':</label></th><td><select name="Ap_m" id="id_Ap_m"><option value="" selected="selected">Select an application method</option><option value="1">Aerial</option><option value="2">Ground Sprayer</option></select></td></tr>').appendTo("table");
$('<tr><th><label for="id_Ar">Application rate ' + i + ':</label></th><td><input type="text" name="Ar" value="1" id="id_Ar" /></td></tr>').appendTo("table");
i++;
}
//this is the part I could not make it work
if (i>count_c){
$('.form-fields:last').remove();
i--;
}
}
});
});
Спасибо! Это то, чего я хочу. Но я думаю, что не мог использовать функцию clone(), так как мне нужно изменить имя дублированной ячейки, верно? –
Вы можете изменить имя после того, как вы клонируете элемент просто с помощью '$ ('something'). Attr ('name', 'new_name');' – slash197
Мне кажется, мне все же нужно назначить клонированные поля уникальным идентификатором в порядке только изменить одно имя, не так ли? –