Javascript 如何有选择地加粗部分但不是全部<;a>;元素';s链接文本由jQ函数重写并注入现有(已加载)页面?

Javascript 如何有选择地加粗部分但不是全部<;a>;元素';s链接文本由jQ函数重写并注入现有(已加载)页面?,javascript,jquery,Javascript,Jquery,我当前的jQuery函数片段如下所示。它通过Ajax更新一些链接文本,因此浏览器中不会出现页面刷新 函数执行前的HTML: <a href="..." id="count"><b>1</b> following</a> <a href="..." id="count"><b>2</b> following</a> 函数执行后的HTML: <a href="..." id="count">

我当前的jQuery函数片段如下所示。它通过Ajax更新一些链接文本,因此浏览器中不会出现页面刷新

函数执行前的HTML:

<a href="..." id="count"><b>1</b> following</a>
<a href="..." id="count"><b>2</b> following</a>
函数执行后的HTML:

<a href="..." id="count"><b>1</b> following</a>
<a href="..." id="count"><b>2</b> following</a>


问题是在我的函数将2从1增加到2后,我需要将2加粗。呈现页面时,第一个HTML片段将数字1加粗。但是因为我使用的是Ajax,所以我没有得到浏览器刷新,所以
标记显示为文本,而不是粗体2。有没有一种方法可以将该2换行以强制浏览器加粗?

您可以先从html中删除
标记:

<a href="..." id="count">1 following</a>

不要替换整个文本块,只替换标记之间的内容:

var counter = parseInt( $('#count').find("b").text() );
    counter++;

$("#count").find("b").text(counter);
实际上,我会使用样式化的
span
而不是
b
标记:

.following-counter {
    font-weight: bold;
}

<a href="..." id="count">
    <span class="following-counter">1</span>
    following
</a>

为什么不直接使用CSS,省去麻烦:

a {
    display: inline-block;
}

a::first-letter {
    font-weight: bold;
}

var followingSpan = $("#count").find(".following-counter"),
    counter       = parseInt( followingSpan.text() );

counter++;

followingSpan.text(counter);
a {
    display: inline-block;
}

a::first-letter {
    font-weight: bold;
}