jquery从id获取数字

如何从div标签的id中获取数字?

例:

我如何获得1并将其存储在变量中?

 var id = $("div").attr('id').replace(/button/, ''); 

您的“id”值不能是纯数字; 他们需要以字母或“_”开头,如标识符。 ( 注意 :在HTML5文档中并非如此。)一旦你的“id”值中有一个数字,你就可以使用jQuery attr()函数来获取id:

  var theId = parseInt($('div.whatever').attr('id').replace(/[^\d]/g, ''), 10); 
 // replace all non-digits with nothing alert($('div').attr("id").replace(/\D/g,'')); 

如果你愿意,你可以抓住最后的数字:

 // 
alert($('div').attr("id").match(/\d+$/)); // alerts "555"

如果button是常量前缀,则可以执行以下操作:

 var number = parseInt(element.id.match(/^button(\d+)$/)[1], 10); 

您应该养成在属性名称中使用分隔符的习惯(即button-1,button_1)。 许多优点之一是它可以更容易地从字段中提取数字或其他信息(即,通过将字符串拆分为“ – ”)。

这是一个老问题,但我想添加使用data-属性而不是在id中编码信息的想法:

 window.onload = function() { var element = document.getElementById('button1'); var number = parseInt(element.getAttribute('data-index'), 10); console.log(number); }