Я пытаюсь найти элементы на основе динамического конца идентификатора, который содержит одно или несколько чисел, то есть:
<div id="banana12"></div>
<div id="apple3"></div>
Я пробовал использовать селекторы jQuery, такие как:
find("[id$=/\d+/]")
find("[id$='/\d+/']")
Но безрезультатно. Можно ли использовать такой синтаксис или полный шаблон регулярного выражения, чтобы найти соответствие моим желаемым элементам?
ОБНОВЛЕНИЕ
Точный блок кода, в котором я пытаюсь его использовать:
$.each($('#service_block' + pad(each_panel_incrementer, 2)).find('[id~=/\d+/]'), function (index, value){
//
});
В каком шаблоне первого ответа возвращается «нераспознанное выражение».
1 ответ
Вы можете легко написать один
$('[id]').filter(function(){
return /\d+$/.test(this.id)
})
Демонстрация: Fiddle
Я бы порекомендовал добавить селектор элементов вместе с ним по соображениям производительности.
Обновить
$('#service_block' + pad(each_panel_incrementer, 2)).find('[id]').filter(function () {
return /\d+$/.test(this.id)
}).each(function (index, value) {
//
})
Похожие вопросы
Новые вопросы
jquery
jQuery - это библиотека JavaScript, рассмотрите возможность добавления тега JavaScript. jQuery - это популярная кросс-браузерная библиотека JavaScript, которая облегчает прохождение Document Object Model (DOM), обработку событий, анимацию и взаимодействие AJAX, сводя к минимуму расхождения между браузерами. Вопрос с тегом jQuery должен быть связан с jQuery, поэтому jQuery должен использоваться в рассматриваемом коде, и в вопросе должны быть как минимум элементы, связанные с использованием jQuery.
)
послеpad(each_panel_incrementer, 2)