Я написал обработчик событий, который обнаруживает изменение в списке опций выбора, а затем изменяет несколько входов соседа на основе выбранного значения.Как я могу выделить селектор неявной области?
Теперь я хочу обобщить эту функциональность, чтобы одновременно использовать несколько групп (вождение-выбор-опции-списки + братья и сестры). Новый обработчик OnChange может выглядеть следующим образом:
$('.select-list').on('change', handleChange);
А метод что-то вроде этого:
function handleChange(event){
$parent = $(event.delegateTarget).closest('.parent');
var parentId = '#' + $parent.attr('id');
$(parentId + '.foo').flyAway();
$(parentId + '.bar').destroy();
$(parentId + '.bax').render();
$(parentId + '.qux').doAGiggy();
$(parentId + '.lorem').applyPerfume();
$(parentId + '.ipsum').eatBetter();
// ... several times
}
Я предпочел бы не повторить parentId
часть в течение обработчика, как это грязно и трудно поддерживать. Есть ли способ дать моим селекторам неявный объем, то есть $('.a-class')
знает, что parent-id
Я ожидаю, что он «работает» внутри?
Этот код является недействительным и не делать ничего. Что ты пытаешься сделать? – gdoron
Кто черт возьми этот материал? –
Извинения, обработчик не имеет значения. Я изменил сообщение - важно то, что я не хочу повторять «parentId» в селекторе. Я бы предпочел, чтобы каждый селектор «понимал» контекст, поскольку он является общим. Существует ли такая вещь? –