我的网站上有很多带有值的按钮(按钮的文本),每个按钮都有,例如' .btn-default'的引导类:
<input type="button" value="Clear" class="form-control input-sm btn-default" onclick="doingSomethingElseEtc();">
我如何使用jQuery获取按钮的值并将其绑定到每个按钮的title属性,因此如果您将鼠标悬停在按钮上,则会获得包含按钮中字符串的默认浏览器工具提示价值等。?
例如,只是为了得到我所要求的要点:
$('.btn-default').attr('title', $(".btn-default").val());
我试图尽可能少地触摸代码等。
谢谢!
答案 0 :(得分:3)
您可以使用每个按钮来迭代每个按钮并设置标题。
$('.btn-default').each(function(i,obj){
$(obj).attr('title', $(obj).val());
});
答案 1 :(得分:1)
不需要任何参数,变量或其他什么。 : - )
$('.btn-default').each(function () {
$(this).attr('title', $(this).val());
});
答案 2 :(得分:1)
如果您正在向attr
添加功能,那么您的想法也会有效:
$('.btn-default').attr('title', function() {
//console.log($(this).val(), $(this).text());
return $(this).val() || $(this).text();
});
这将为每个按钮添加类btn-default
title属性。
我认为获取文字也很好,因为您的按钮可以使用input value=".."
或<button>text</button>
来定义
请查看下面的演示以及此jsFiddle。
$('.btn-default').attr('title', function() {
//console.log($(this).val(), $(this).text());
return $(this).val() || $(this).text();
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="button" value="Clear" class="form-control input-sm btn-default" onclick="doingSomethingElseEtc();">
<button class="btn-default">test1</button>
<button class="btn-default">test2</button>
&#13;
答案 3 :(得分:0)
当您读取元素集合的值时,jQuery仅返回集合中第一个的值。因此,您需要迭代所有这些并在每个上设置标题。
$('.btn-default').each( function () {
var elem = $(this);
elem.attr('title', elem.val());
});
如果有很多元素,那么这将是缓慢的。您还需要在文档就绪时执行此操作。