我只需要更改标题的第一个值。我做了一些事情,但我不知道这是否是最好的方法。
HTML:
<div title="Title that have to be change"> the div is here </div>
JS:
$("div").click(function(){
var title = $(this).attr('title').split(' ')[0];
/*
title is now getting the first value (Title), so,
i need to change only him.
*/
// this is the better way to do this ?
if(title == "Title"){
$(this).attr("title", "Changed that have to be change");
}
});
我可以只更改标题的一部分,而不是完成所有这些吗?
答案 0 :(得分:6)
保留标题的所有部分。只更改第一部分,然后将部分重新组合在一起以形成新标题。
$("div").click(function(){
var parts = $(this).attr('title').split(' ');
/*
now only change part[0]
*/
// now put the parts back together
$(this).attr("title", parts.join(" " ));
});
或者,如果转换相对简单(例如,删除第一个单词,如果它是标题),则可以使用正则表达式。
$("div").click(function(){
var newTitle = $(this).attr('title').replace(/^Title /,''); // space is important
$(this).attr("title", newTitle);
});
答案 1 :(得分:0)
答案 2 :(得分:0)
如果你知道你总是希望结果是相同的,即你总是改变像“点击这里编辑”到“通过点击这里保存”这样的东西,那么更容易改变整个标题:
<div id="titled" title="Edit by clicking here">...</div>
...
$( '#titled' ).attr( 'title', "Save by clicking here" );
但如果标题已生成或您不知道确切内容,则应使用其他解决方案。