You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

jQuery设置span部分文本为粗体失效,求解决方法

解决span中部分文本无法设置粗体的问题

嘿,我明白你遇到的问题了!你现在用的text()方法是罪魁祸首——jQuery的text()会把所有传入的内容都当成纯文本处理,哪怕你写了<b>标签(或者转义后的&lt;b&gt;),它都会直接显示成字符串,不会让浏览器解析成HTML标签,自然就看不到粗体效果啦。

正确的解决方案:改用html()方法

jQuery的html()方法会把传入的内容当作HTML代码来解析,这样<b>标签就能生效了。修改你的代码很简单:

原问题代码:

$('#spnApprRejInfo').text(response.d + " for " + "&lt;b&gt;" + spspnaname + "&lt;/b&gt;");

修改后的代码:

// 直接用HTML标签,不需要转义
$('#spnApprRejInfo').html(response.d + " for " + "<b>" + spspnaname + "</b>");

更简洁的模板字符串写法(ES6+):

$('#spnApprRejInfo').html(`${response.d} for <b>${spspnaname}</b>`);

额外提醒:注意XSS风险

如果spspnaname是来自用户输入的内容,直接用html()可能会有跨站脚本攻击(XSS)的风险。这时候可以先把用户输入的内容用text()转义成安全的纯文本,再拼接进HTML:

// 先转义用户输入的内容
const safeSpspnaname = $('<span>').text(spspnaname).html();
// 再拼接成HTML
$('#spnApprRejInfo').html(`${response.d} for <b>${safeSpspnaname}</b>`);

这样既实现了粗体效果,又能避免潜在的安全问题~

内容的提问来源于stack exchange,提问作者Nadeem

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.20 12:01:26