К вернуть число в конце атрибута id
, использовать
$(this).attr("id").match(/[\d]+$/);
Выше будет возвращено 45
, если $(this)
равно <div id="block-id-45"></div>
Пример jsFiddle
Выше работает то, что вы получаете идентификатор элемента, используя .attr()
, затем вы смотрите на id
и используете .match()
, чтобы восстановить число в конце./[\d]+$/
является регулярным выражением.[\d]
означает одну цифру +
означает одну или несколько (из цифр).и $
означает конец строки.
Вы можете использовать эту функцию для извлечения чисел из конца всех div с идентификатором, который начинается с block-id-
, используя атрибут начинается с селектора [name^=value]
и .each()
:
Практическое использование:
$(function() {
// Select all DIS that start with 'block-id-'
// and iterate over each of them.
$("div[id^='block-id-']").each(function() {
// You could push this data to an array instead.
// This will display it.
$("body").append( "Id number: " +
// This is the number at the end
$(this).attr("id").match(/[\d]+$/) +
"<br/>" );
});
});