Сообщение от jsnb
|
Я предлагаю сделать примитивный макет, в котором останется только часть демонстрирующая проблему. Серверная часть может состоять вообще из одной строки вида: echo "данные_в_нужном_формате". Потому что без демонстрации я так и не понял на что там у вас повешан аякс и при добавлении чего оно не работает. В приведенных кусках кода вообще какая-то неразбериха - в HTML указана одна функция, в JS приведена другая и совершенно непонятно как оно всё вместе там у вас работает. И для создания макета не нужен хостинг, достаточно HTML+JS+формат данных, которые возвращает сервер.
|
Так, короче я решил облегчить задачу максимально. И воспользоваться jQuery + AJAX.
Вот смотрите.
Сначала html
<select id='select_country_id'><option value=''>страна не выбрана</option></select>
<input type="button" id="add_field" value="Добавить услугу">
Далее jQuery - получаем данные из php скрипта.
$(document).ready(function() {
$.ajax({
type: "POST",
url: "countryListUpdate.php",
dataType: "html",
success: function(response){
//alert(response);
$('#select_country_id').html(response);
}
});
});
Ну и собственно код, позволяющий добавлять селекты:
var counter = 1;
$("#add_field").click(function () {
if(counter>10){
alert("Достигнут лимит добавления полей!");
return false;
}
var newTextBoxDiv = $(document.createElement('div'))
.attr("id", 'CountryServiceOptionsBlock' + counter);
newTextBoxDiv.after().html('<select id="select_country_id' + counter + '"><option value="">страна не выбрана</option></select><p>');
newTextBoxDiv.appendTo("#ServiceBlockGroup");
counter++;
});
Вопрос - как сделать, так, чтобы страны могли подгружаться в n-ый добавленый элемент select?
Пока подгружаются только в первый.