Sweet Alerts显示UTF-8字符错误

ray*_*n0w 0 javascript php utf-8 sweetalert

我不知道怎么了,我有这个JavaScript函数:

<script charset="utf-8" type="text/javascript">
$(document).ready(function(){
    //initialize the javascript
    App.init();
    @if(Session::has('message'))
    var msg = '{{ Session::get('message') }}';
    console.log(msg);
    swal({
        title: "",
        text: 'compa&ntilde;ia',
        type: "warning",
        confirmButtonText: "Ok!",
        closeOnConfirm: false
    });
    $(window).bind("load", function() {
        $.gritter.add({
            title: 'Atencion',
            text: 'compa&ntilde;ia',
            image: '{{ asset('images/clipboard_icon.png') }}',
            class_name: 'danger',
            time: ''
        });
        return false;
    });
    @endif
});
</script>
Run Code Online (Sandbox Code Playgroud)

问题在于,甜蜜警报没有显示:'compañia'它显示了,'compa&ntilde;ia'但是gritter消息正确显示了该单词。(见图片) 在此处输入图片说明

如您所见,红色的抱怨者正确地显示了该词,但甜蜜的警告却没有,

该文件是UTF-8编码的,因此元和脚本也是以防万一,在您问我为什么'compa&ntilde;ia'要将它放在会话中由Laravel发送并由视图以这种格式检索的较大消息的一部分时,它也是这样。

无论如何,我真正的问题是,为什么粗砂纸会显示出很好的单词,我该如何解决这个问题,使其在发出甜蜜警报时也能正常工作。

ray*_*n0w 7

我只是通过添加html: true到函数来修复它:

swal({
        title: "",
        text: 'compa&ntilde;ia',
        type: "warning",
        confirmButtonText: "Ok!",
        closeOnConfirm: false,
        html: true
    });
Run Code Online (Sandbox Code Playgroud)