Добрый день, задача следующая, нужно распарсить страницу и собрать все числовые значения из id на странице. На странице 10-15 блоков с id="div-10", id="div-11". Вот нужно забрать 10 и 11 и посетить в массив:
{"cid":10}, {"cid":11}
и.т.п
Застопорился в самом начале:
n = $(this).attr("id").match(/div-(\d+)/);
$.each(n, function(index, value) {
$('#my').append(index + ': ' + value);
});
Получаю ошибку:
Uncaught TypeError: Cannot call method 'match' of undefined
Помогите пожалуйста?
update:
jQuery.expr[':'].regex = function(elem, index, match) {
var matchParams = match[3].split(','),
validLabels = /^(data|css):/,
attr = {
method: matchParams[0].match(validLabels) ?
matchParams[0].split(':')[0] : 'attr',
property: matchParams.shift().replace(validLabels,'')
},
regexFlags = 'ig',
regex = new RegExp(matchParams.join('').replace(/^\s+|\s+$/g,''), regexFlags);
return regex.test(jQuery(elem)[attr.method](attr.property));
};
n = jQuery('div:regex(id,div-\\d+)');
jQuery.each(n, function(index, value) {
jQuery('#my').append(index + ': ' + value);
});
Вот такая штука помогает найти все дивы, как теперь оставить только числовую часть?