X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость (

| Вход | Регистрация )

Открыть тему
Тема закрыта
> Динамическое добавление/удаление полей в форму, баг с удалением. Как решить?
octavian_hb
octavian_hb
Topic Starter сообщение 13.7.2011, 19:55; Ответить: octavian_hb
Сообщение #1


пушу форму для соискателя, столкнулся с проблемой, которую создатели скрипта не предусмотрели... Если из div.innerHTML убрать теги <p>, то удаление поля или группы полей работает, если каждое поле заключить в тег (любой), то удаляется только кнопка "удалить".

Люди, вы умные и добрые, помогите плиизз..
[JS]
<script type="text/javascript">
var countOfFields = 1;
var curFieldNameId = 1;
var maxFieldLimit = 100;
function deleteField(a) {
var contDiv = a.parentNode;
contDiv.parentNode.removeChild(contDiv);
countOfFields--;
return false;
}
function addField() {
if (countOfFields >= maxFieldLimit) {
alert("Число полей достигло своего максимума = " + maxFieldLimit);
return false;
}
countOfFields++;
curFieldNameId++;
var div = document.createElement("div");
div.innerHTML = "<p>Дата поступл.:<br /><input type=\"text\" name=\"edate_"+curFieldNameId+"\" id=\"edate"+curFieldNameId+"\" class=\"textfield\" style=\"width: 100px;\" /></p>"+"<p>Дата окончания:<br /><input type=\"text\" name=\"odate_"+curFieldNameId+"\" id=\"odate"+curFieldNameId+"\" class=\"textfield\" style=\"width: 100px;\" /></p>"+"<p>Учебные заведение:<br /><input type=\"text\" name=\"einst_"+curFieldNameId+"\" id=\"einst"+curFieldNameId+"\" class=\"textfield\" style=\"width: 200px;\" /></p>"+"<p>Фак-т, спец-ть:<br /><input type=\"text\" name=\"faq_"+curFieldNameId+"\" id=\"faq"+curFieldNameId+"\" class=\"textfield\" style=\"width: 100px;\" /></p>"+"<p><input onclick=\"return deleteField(this)\" type=\"button\" value=\"Х\" /></p>";
document.getElementById("parentId").appendChild(div);
return false;
}
</script>
[/JS]
<div id="form">
<form action="pnhandlr.php" method="post" enctype="multipart/form-data">
<div class="many">
<h3>Образование</h3>
<input onclick="return addField()" type="button" value="Добавить строку" />
<div id="parentId">
<div>
<p>
Дата поступл.:<br />
<input type="text" name="edate_0" id="edate0" value="" class="textfield" style="width:100px" />
</p>
<p>
Дата окончания:<br />
<input type="text" name="odate_0" id="odate0" value="" class="textfield" style="width:100px" />
</p>
<p>
Учебные заведение:<br />
<input type="text" name="einst_0" id="einst0" value="" class="textfield" style="width:200px" />
</p>
<p>
Фак-т, спец-ть:<br />
<input type="text" name="faq_0" id="faq0" value="" class="textfield" style="width:100px" />
</p>
</div>
</div>
</div>
<div style="clear: both">
<div><input type='submit' name='save' value='Сохранить' class='butt' /></div>
</div>
</form>
</div>
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
alexdrob
alexdrob
сообщение 13.7.2011, 20:12; Ответить: alexdrob
Сообщение #2


ну например вот тут
[JS]var contDiv = a.parentNode[/JS]
взять ещё на 1 уровень выше и удалять
как то так
[JS]function deleteField(a) {
var contDiv = a.parentNode.parentNode
contDiv.parentNode.removeChild(contDiv)
countOfFields--
return false
}[/JS]
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
alexdrob
alexdrob
сообщение 13.7.2011, 20:12; Ответить: alexdrob
Сообщение #3


но при таком способе нужно что бы все поля обёрнуты были в какой либо тег иначе что то лишнее удалится.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
octavian_hb
octavian_hb
Topic Starter сообщение 13.7.2011, 21:08; Ответить: octavian_hb
Сообщение #4


Спс, так оно и есть, все работает, респект!!!

Замечание модератора:
Эта тема была закрыта автоматически ввиду отсутствия активности в ней на протяжении 100+ дней.
Если Вы считаете ее актуальной и хотите оставить сообщение, то воспользуйтесь кнопкой
или обратитесь к любому из модераторов.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Горячая тема (нет новых ответов) Как вы отдыхаете от работы за компом
151 adw-kupon.ru 19812 Сегодня, 13:52
автор: Vmir
Открытая тема (нет новых ответов) Как вы бросили работу и перешли на заработок с сайтов?
20 uahomka 3444 Сегодня, 11:54
автор: Skyworker
Открытая тема (нет новых ответов) Как в пушсетках покупают по 100-200 тысяч кликов за день?
1 Boymaster 511 Сегодня, 11:45
автор: Skyworker
Горячая тема (нет новых ответов) Как вывести деньги в Украине с заблокированного Юмани ?
30 freeax 5006 20.4.2024, 16:49
автор: Liudmila
Открытая тема (нет новых ответов) Арбитражники, как ведете учет расходов и доходов?
13 Boymaster 2018 20.4.2024, 15:06
автор: Boymaster


 



RSS Текстовая версия Сейчас: 23.4.2024, 22:26
Дизайн