Мне нужно, чтобы, когда я нажимаю кнопку «добавить», должен быть клонирован определенный div. Для этого я использую следующий код:
function addDetails() { var details=document.getElementById('education'); var eachDetail=document.getElementById('fdetails_edu_div'); var newEduDetail = eachDetail.cloneNode(true); details.appendChild(newEduDetail); }//end of addDetails function
поэтому имя div, 'fdetails_edu_div', постоянно добавляется к названию div, 'education' каждый раз, когда нажимается кнопка «Добавить».
Теперь я хочу знать, как я могу обрабатывать все эти новые динамически добавленные divs (содержащие текстовые поля) на сервере (используя PHP).
Проблема заключается в том, что когда я просматриваю источник страницы, после нажатия кнопки добавления (и, следовательно, добавлены новые div), я не вижу никакого HTML-кода, соответствующего вновь созданным div. Поэтому я не понимаю, когда будет размещена форма (содержащая все эти div), как PHP на сервере получит доступ к этим новым динамически добавленным текстовым полям, содержащимся в div?
Вы не видите, что вновь созданная функция view-source
браузера DIV
s beaceuse отображает исходный файл HTML, загруженный с сервера (до того, как какой-либо JavaScript вступил в силу). Если вы хотите увидеть настоящий HTML-код, как видите в браузере, используйте свойство innerHTML
DomElement или какой-нибудь инспектор DOM ( Firebug для Firefox, DragonFly в опере, F12 в Internet Explorer).
Вам следует отправить запрос AJAX на сервер с информацией о том, что некоторые новые данные были созданы и сервер генерирует новый HTML. Это должно происходить независимо от функции addDetails
клиента.
На стороне клиента вы также должны удалить новый DIV
если вызов AJAX завершился неудачно.
Поскольку вы не указали, как создается страница, я не могу дать вам никаких указаний, как PHP-скрипт обрабатывает запросы AJAX. Это зависит от вас, если вы не предоставите нам более подробную информацию.