我需要在' a'中添加动态标题。使用Jquery标记
现在在HTML中我有这个:
<a href="link" title="Bad title1">Epic Text Link1</a>
<a href="link" title="Bad title2">Epic Text Link2</a>
<a href="link" title="Bad title3">Epic Text Link3</a>
<a href="link" title="Bad title4">Epic Text Link4</a>
我需要Jquery首先删除标题,然后添加一个类似于文本的标题。
现在在Jquery我有这个:
$("#ClassForThisPart a").removeAttr("title")
但这只是删除了现有的标题
答案 0 :(得分:1)
要更改属性的内部文本,请使用attr()
代替removeAttr()
。
attr()
用于在属性中分配内部文本,其中removeAttr()
用于从元素中删除特定属性。
在你的情况下,
$("#ClassForThisPart a").attr("title","Whatever the new value is");
答案 1 :(得分:1)
&#34;添加一个类似于TEXT的标题。&#34;
OP希望将标题替换为当前文本值。
要根据锚标记的内容添加标题,请使用.attr()
和.text()
的组合
$( "#ClassForThisPart a" ).attr( "title", function() {
return $(this).text();
});
答案 2 :(得分:0)
无需删除属性然后重新添加,您只需使用attr()
方法为属性指定新值:
$("#ClassForThisPart a").attr("title", "new title");
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="ClassForThisPart">
<a href="link" title="Bad title1">Epic Text Link1</a>
<a href="link" title="Bad title2">Epic Text Link2</a>
<a href="link" title="Bad title3">Epic Text Link3</a>
<a href="link" title="Bad title4">Epic Text Link4</a>
</div>
&#13;
如果您仍然希望删除该属性然后重新添加,则jQuery中没有addAttr()
方法,因此您还可以使用attr()
方法,这似乎是多余的:
$("#ClassForThisPart a").removeAttr("title").attr("title", "new title");
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="ClassForThisPart">
<a href="link" title="Bad title1">Epic Text Link1</a>
<a href="link" title="Bad title2">Epic Text Link2</a>
<a href="link" title="Bad title3">Epic Text Link3</a>
<a href="link" title="Bad title4">Epic Text Link4</a>
</div>
&#13;
答案 3 :(得分:0)
使用attr(attributeName, function)
并返回回调中每个元素实例的文本或您想要该文本的任何修改
$("#ClassForThisPart a").attr('title', function(i, oldTitle) {
return this.textContent;
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="ClassForThisPart">
<a href="link" title="Bad title1">Epic Text Link1</a>
<a href="link" title="Bad title2">Epic Text Link2</a>
<a href="link" title="Bad title3">Epic Text Link3</a>
<a href="link" title="Bad title4">Epic Text Link4</a>
</div>
&#13;
答案 4 :(得分:0)
我的HTML
<div class="links">
<a href="link" title="Bad title1">Epic Text Link1</a>
<a href="link" title="Bad title2">Epic Text Link2</a>
<a href="link" title="Bad title3">Epic Text Link3</a>
<a href="link" title="Bad title4">Epic Text Link4</a>
</div>
您可以使用.each()
$(".links a").each(function(i, elem){
var title = $(elem).attr('title');
$(elem).text(title);
});