Подтвердить что ты не робот

JQuery/Получить числа из строки

У меня есть кнопка на моей странице с классом comment_like и идентификатором типа comment_like_123456, но числа в конце являются переменными; может быть от 1 до 1000000.

Когда эта кнопка нажата, мне нужно захватить конечный номер, чтобы я мог запускать задачи для других элементов с тем же суффиксом.

Есть ли простой способ захватить это число в jQuery?

$('.comment_like').click(function() {
    var element_id = $(this).attr('id');

    // grab number from element ID

    // do stuff with that number

});
4b9b3361

Ответ 1

Вы можете сделать это следующим образом:

var suffix = 'comment_like_123456'.match(/\d+/); // 123456

Что касается кнопки:

$('.comment_like').click(function(){
  var suffix = this.id.match(/\d+/); // 123456
});

Ответ 2

В обработчике кликов:

var number = $(this).attr('id').split('_').pop();

Ответ 3

Это задача для простых регулярных выражений, она не имеет ничего общего с jQuery:

"comment_like_123456".match(/\d+/)

=> ["123456"]

Ответ 4

http://jsfiddle.net/hj2nJ/

var x = 'comment_like_6846511';
var y = '';

for (i = 0; i < x.length; i++)
{
    if ("" + parseInt(x[i]) != "NaN") //if the character is a number
        y = y + x[i];
}

document.write(y);

Ответ 5

jQuery - не волшебная пуля. Используйте Javascript!

var temp = "comment_like_123456".split("_")
alert(temp[2])

Ответ 6

Просто введите id и запустите его через регулярное выражение.

$(mybutton).click(function() {
    var num = parseInt(/^.*\_(\d+)$/.exec(this.id)[1])
});