Ответ 1
Да, это возможно.
$('#customerid_c').nextAll().eq(2)
.append('<input class="readOnly" id="d_accountAddress" />');
В jQuery 1.4.2 вы можете написать
$('#customerid_c~:eq(2)')
.append('<input class="readOnly" id="d_accountAddress" />');
Этот селектор, который работает некорректно в более ранних версиях jQuery, использует Next Siblings Selector (~
), чтобы выбрать всех родственников элементы, следующие за #customerid_c
, затем используют селектор :eq
, чтобы выбрать третий (нулевой) элемент, соответствующий другому селектору.
jQuery имеет большое разнообразие селекторов, которое, возможно, заменит проиндексированный брат. Если вы покажете нам свой HTML-код, мы сможем найти его.
Другие примечания:
Вы можете установить несколько атрибутов за один вызов:
$(something).attr({ id: 'd_accountAddress', type: 'text' });