获取 ID 的数字部分

get numeric part of ID

本文关键字:数字部 ID 获取      更新时间:2023-09-26

如果我有以下元素:

<div id="ITEM22"></div>

我可以像这样得到id:

$(this).attr('id');

但是,如果,即 22,我如何才能只获得其中的数字部分?

编辑:项目始终是前缀。

var thenumber22 = $(this).attr('id').match(/('d+)/)[1]

如果您始终具有前缀ITEM那么您可以

var numeric = this.id.replace('ITEM','');

正如@Felix在注释中提到的,您可以使用 + 一元运算符 MDC docs 将其直接转换为可用数字(而不仅仅是字符串表示形式

var numeric = +this.id.replace('ITEM','');

此外,我已将$(this).attr('id')更改为this.id,因为this已经引用了您想要的对象,您可以使用this.id直接访问其 id 属性

var whatYouWant = getNo($(this).attr('id'));
function getNo(stringNo)
{
    var parsedNo = "";
    for(var n=0; n<stringNo.length; n++)
    {
        var i = stringNo.substring(n,n+1);
        if(i=="1"||i=="2"||i=="3"||i=="4"||i=="5"||i=="6"||i=="7"||i=="8"||i=="9"||i=="0")
            parsedNo += i;
    }
    return parseInt(parsedNo);
}
<div id="ITEM22"></div>
var id = $(this).attr('id');  
var numeric_part = id.replace(/[A-Z]+/, '');  //Output : 22

这使用正则表达式提取字符串的数字部分。

var numericPart = id.match(/'d+/);