ОК, поэтому у меня есть эти 3 поля, которые я клонирую, используя jQuery, но по какой-то причине идентификаторы не увеличиваются, как должны, все они имеют одинаковые идентификаторы, здесь код JQuery:Auto incrementing ID из клонированных разделов не увеличивается
$(document).ready(function() {
$('#btnAdd').click(function() {
var num = $('.clonedSection').length;
var newNum = new Number(num + 1);
var newSection = $('#clonedSection' + num).clone().attr('id', 'clonedSection' + newNum);
//reset the value of the text fields
newSection.find(':text, textarea').val('');
newSection.children(':first').children(':first').attr('id', 'gender' + newNum).attr('name', 'gender' + newNum);
newSection.children(':nth-child(2)').children(':first').attr('id', 'age' + newNum).attr('name', 'age' + newNum);
newSection.children(':nth-child(3)').children(':first').attr('id', 'school' + newNum).attr('name', 'school' + newNum);
$('.clonedSection').last().append(newSection);
$('#btnDel').attr('disabled','');
if (newNum == 4)
$('#btnAdd').attr('disabled','disabled');
});
$('#btnDel').click(function() {
var num = $('.clonedSection').length; // how many "duplicatable" input fields we currently have
$('#clonedSection' + num).remove(); // remove the last element
// enable the "add" button
$('#btnAdd').attr('disabled','');
// if only one element remains, disable the "remove" button
if (num-1 == 1)
$('#btnDel').attr('disabled','disabled');
});
$('#btnDel').attr('disabled','disabled');
});
HTML:
<div id='skewl'>
<div id='clonedSection1' class='clonedSection'>
<div class='clonedInput' style='width: 600px; height: 7px;'>
<label for='gender1'>Gender: </label>
<span class='positionMe'><select type='text' name='gender1' id='gender1' >
<option>Select one</option>
<option>Male</option>
<option>Female</option>
</select>
</span>
</div>
<br />
<div class='clonedInputTwo' style='width: 600px; height: 7px;'>
<label for='age1'>Age: </label>
<span class='positionMe'><input type='text' name='age1' id='age1' /></span>
</div>
<br />
<div class='clonedInputThree' style='width: 600px; height: 7px;'>
<label for='school1'>School: </label>
<span class='positionMe'><input type='text' name='school1' id='school1' /></span>
</div>
<br />
</div>
Любые идеи?
Thanx заранее!
Thanx для информации, работая над этими изменениями, которые вы указали! Тем не менее, не работает, хотя даже с этим кодом и удаленным удалением он все еще остается в 1! Значения num, похоже, увеличиваются, но по какой-то причине они не назначаются. :/ – Odyss3us
@kielie - Я допустил ошибку. Было немного смущено обходом. Я только что обновил. Я, вероятно, сделаю еще один, когда прочитаю код еще немного. – user113716
@kielie - Только что обновлено. Я не заметил, что вход был вложен в ''. Должен работать сейчас. – user113716