如何从 div 名称中检索 id 数字?
例如对于以下 html,我想检索 123<div id="subscript-guest-id-123"></div>
我试过的
$('[id^="subscript-guest-id-"]').click(function(){
var sid = this.id.slice().replace('/subscript-guest-id-/','');
alert(sid);
});
如何从 div 名称中检索 id 数字?
例如对于以下 html,我想检索 123<div id="subscript-guest-id-123"></div>
我试过的
$('[id^="subscript-guest-id-"]').click(function(){
var sid = this.id.slice().replace('/subscript-guest-id-/','');
alert(sid);
});
应该:
var sid = this.id.replace('subscript-guest-id-', '');
也就是说,将这样的数据存储在 ID 中并不总是最佳选择。更好的方法可能是将数字存储在数据属性中:
<div class="subscript-guest" data-id="123"></div>
并访问它:
$('.subscript-guest').click(function(){
var sid = $(this).data('id');
});
使用数据属性的好处是您不必进行任何字符串解析来获取值。
由于您无论如何都在使用jQuery:
$(this).attr('id').replace('subscript-guest-id-', '');
试试这个substring()
:
$('[id^="subscript-guest-id-"]').click(function(){
var sid = $(this).attr('id').substring(19);
alert(sid);
});
有待改善:
$('[id^="subscript-guest-id-"]').click(function(){
var sid = this.id.split('-').pop();
alert(sid);
});