Я хочу знать, как добавить событие в динамически созданный элемент. он отлично работает для первой строки, но необходимо привязать SplitSelectValue к следующей сгенерированной строке.
$('#SelID_').change(function () {
SplitSelectValue($(this));
});
function SplitSelectValue () {
var data =$("#SelID_ option:selected").val();
var arr = data.split('|');
$("#SelVala_").val(arr[0]);
$("#SelValb_").val(arr[1]);
$("#SelValc_").val(arr[2]);
}
См. Jsfiddle
Обновленная скрипка с двумя разными таблицами
что вам нужно,
Пытаться,
$(document).on('change', '[id^="SelID_"]', function () {
SplitSelectValue($(this));
});
function SplitSelectValue(obj) {
var data = obj.find("option:selected").val();
var arr = data.split('|');
var tr = obj.closest('tr');
tr.find("[id^='SelVala_']").val(arr[0]);
tr.find("[id^='SelValb_']").val(arr[1]);
tr.find("[id^='SelValc_']").val(arr[2]);
}
использование мероприятия - делегирование
$(document).on('change', '#SelID_', function () {
SplitSelectValue($(this));
});
вместо ID лучше использовать селектор классов (идентификатор должен быть уникальным на странице, иначе - генерировать динамический идентификатор)