我目前有一个名为widget_remove_friendsWidget的CSS类,还有一个widget_remove_profileWidget的CSS类

现在,我尝试使用jQuery从CSS类中获取小部件名称,例如:

当我拥有CSS类widget_remove_friendsWidget时,我不想获得完整的CSS类,而只希望获得widget_remove_之后的部分,因此它将是friendsWidget而不是widget_remove_friendsWidget

我怎样才能做到这一点?

最佳答案

尝试使用replace()函数摆脱类前缀:

var className = $('.widget_remove_profileWidget').attr('class').replace('widget_remove_', '');


如果同一元素中有多个类:



$(document).on('click', '#click', function() {
  var that = $(this);
  var classArr = that.attr('class').split(' ');
  var target = $('#className');
  for (i in classArr) {
    var item = classArr[i];
    if (item.indexOf('prefix_') != -1) {
      var name = item.replace('prefix_', '');
    }
  }
  target.html(name);
})

#click {
  cursor: pointer;
}
#className {
  width: 150px;
  height: 30px;
  display: inline-block;
  line-height: 30px;
  border: 1px solid #d8d8d8;
}

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<span id="click" class="prefix_nameOne anotherClass">click</span>
<span id="className"></span>

10-06 12:11