用jQuery替换ID中的特殊字符

时间:2016-07-07 13:14:24

标签: jquery

我有。 G。这段代码:

<article role="tabpanel" class="tab-pane" id="2.asdasdasdda">

并需要删除/替换“。”在ID。

我尝试过:

$('.tab-pane').replace('.','LEAVE');

但没有任何反应。我在这里做错了什么?

3 个答案:

答案 0 :(得分:2)

你可以这样使用它:

$('.tab-pane').attr('id', function(){
   var id = this.id.replace('.','LEAVE');
   return id;
});
  

但没有任何反应。

当然!您的代码无法正常工作,您尝试替换元素内容的.,而不是这种情况。
因为您想要更改它的属性id。因此,.attr()方法可以与函数一起用作第二个参数。

答案 1 :(得分:0)

试试这个(当然你可以改变你想要的“离开”):

console.log($(".tab-pane").attr("id"));
$(".tab-pane").attr("id",$('.tab-pane').attr("id").replace('.','LEAVE'));
console.log($(".tab-pane").attr("id"));
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<article role="tabpanel" class="tab-pane" id="2.asdasdasdda">

答案 2 :(得分:0)

您需要重新分配ID属性的值。

$('.tab-pane').attr('id', function(_, value) {
  return value.replace('.', 'LEAVE');
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<article role="tabpanel" class="tab-pane" id="2.asdasdasdda">aaa</article>