spatie/Laravel-pjax 返回的页面脚本中中文被转义,导致脚本中 dom 操作后的中文变成'&#..'这样的显示,该如何批量解决该问题?

spatie/laravel-pjax 返回后的页面内容 经过了 $content = mb_convert_encoding($content, 'HTML-ENTITIES', $charset) 转义
中文多转成了类似 xx; 的编码
<a href="#"><i class="fa fa-circle text-success"></i> &#xxx; &#xxx; </a> 这种html中 编码可以正常显示为中文
但在js 脚本中的处理
modal_title.text("&#xxx; &#xxx; &#xxx; &#xxx; &#xxx; &#xxx; ");
后则显示编码 而不是中文
如何在框架中可以批量简单的解决这类pjax返回的问题,而不用去脚本里一个个修改处理呢,请大神帮忙
所处环境
"laravel/framework": "5.4.*"
"spatie/laravel-pjax": "^1.3"

《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
讨论数量: 1

虽然不能完美解决,但可以解决一般情况下的问题。 亲测有效

$('.pjax-container').html(c($('.pjax-container').html()))
// Unicode 转义
function c(str) {
    str = str.replace(/(\\u)(\w{1,4})/gi, function ($0) {
        return (String.fromCharCode(parseInt((escape($0).replace(/(%5Cu)(\w{1,4})/g, "$2")), 16)));
    });
    str = str.replace(/(&#x)(\w{1,4});/gi, function ($0) {
        return String.fromCharCode(parseInt(escape($0).replace(/(%26%23x)(\w{1,4})(%3B)/g, "$2"), 16));
    });
    str = str.replace(/(&#)(\d{1,6});/gi, function ($0) {
        return String.fromCharCode(parseInt(escape($0).replace(/(%26%23)(\d{1,6})(%3B)/g, "$2")));
    });
    return str;
}
3年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!