我试图从一个jquery元素中捕捉到一个类的其余部分

问题描述 投票:0回答:1

我很难抓紧时间去抓 1modal-id-.

<div class="card-pg modal-id-1"></div>

我怎么能在这个函数里面做到这一点?

$('.card-pg').click(function () {

});

我试着用这个

$(this).attr('class').split(/\s+/)

但这给了我一个 classList 喜欢 HTMLElement.classList 而如果我选择 $(this).attr('class').split(/\s+/)[1],为了赶上第二类,我可能会失去灵活地插入。modal-id-1 类的任何地方,我想。

jquery
1个回答
0
投票

你可以从 .attr('class').split 得到一个类的列表,然后你可以检查每个类是否以 modal-id-, :

const MODAL_ID = 'modal-id';
$(function() {
  $('.card-pg').click(function() {
    let classes = $(this).attr('class').split(/\s+/);
    classes.forEach(c => {
      if (c.indexOf(MODAL_ID) == 0) {
        let modal_id = c.substr(MODAL_ID.length);
        console.log(modal_id)
      }
    });
  });
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="card-pg modal-id-1">div</div>
© www.soinside.com 2019 - 2024. All rights reserved.