Входные условия:
Циклом в php создается пакет элементов
select c уникальными айдишниками.
<select id="select_A">
<option value="0">0000</option>
<option value="1">1111</option>
...
<option value="n">....</option>
</select>
<select id="select_B">
<option value="a">0000</option>
<option value="b">1111</option>
...
<option value="n">....</option>
</select>
<select id="select_C">
<option value="A">0000</option>
<option value="B">1111</option>
...
<option value="n">....</option>
</select>
Есть скрипт, который слушает событие .change ...
вот скрипт для одно айдишника
$(document).ready(function() {
$('#select_A').change(function() {
var selectId = $('#select_A :selected').val();
$.ajax({
type: "POST",
url: "ajax.php",
data: "id=" + selectId,
dataType: 'json',
success: function(data) {
var obj = $.parseJSON(data);
$.each(data, function(i, item) {
var id = (data[i].id);
var name = (data[i].name);
$("#result_0_A").val(id + $('#result_0_A').val().replace("placeholder", data));
$("#result_1_A").val(name + $('#result_1_A').val().replace("placeholder", data));
});
}
});
});
});
... по событию вставляет полученные из базы данные в созданные элементы со своими уникальными айдишниками.
Вот разметка
<div>
<input id="result_0_A" value="" placeholder=" ">
<input id="result_1_A" value="" placeholder=" ">
</div>
<div>
<input id="result_0_B" value="" placeholder=" ">
<input id="result_1_B" value="" placeholder=" ">
</div>
<div>
<input id="result_0_C" value="" placeholder=" ">
<input id="result_1_C" value="" placeholder=" ">
</div>
Вопрос:
как можно оптимизировать код что бы скрипт обрабатывал любое количество динамически созданных элементов?
Сейчас код работает, но слушает только один элемент и способен заполнить данными только одну пачку инпутов. Этих элементов может быть много (количество не известно).
Любые идеи и советы принимаются с благодарностью.
PS. В скрипте оставил кусок ajax что бы не пояснять откуда берутся данные и почему массив... и т.д. в общем на него можно не обращать внимания - он свою работу делает.