HTML特殊字符在js中无法正确显示

时间:2013-02-02 15:41:23

标签: javascript html special-characters alert

我正在为法国客户开发使用PHP,Smarty的Web应用程序。我在java脚本警报和确认框中遇到问题。如何在javascript消息框中使用HTML特殊字符。这是我的代码

<script type="text/javascript">
    function delConfirm(key){

        if(confirm('&Ecirc;tes vous certain de vouloir supprimer ce client ?')){
            window.location = "deleteClient.php?e="+key;
        }

    }
</script>

这是页面第一部分的页面源。请看一下编码部分,

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <title></title>
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta name="description" content="">
    <meta name="author" content="Sunil">

2 个答案:

答案 0 :(得分:7)

这是正确的,因为confirm不接受HTML。但是,您可以在JavaScript中使用unicode转义序列。您可以查找Unicode代码点值here。等同于&Ecirc;的是U+00CA(它位于this chart),所以:

if(confirm('\u00CAtes vous certain de vouloir supprimer ce client ?')){
    window.location = "deleteClient.php?e="+key;
}

或者,确保您的文件已正确编码(例如UTF-8),编辑器理解以这种方式编码的文件,并且文件服务正确(服务器告诉浏览器它是UTF-8),也许甚至可以在标题中输入meta charset="xxx" tag以获得好运,你可以直接在文件中输入法文字符。

答案 1 :(得分:1)

改为使用

<script type="text/javascript">
    function delConfirm(key){

        if(confirm('\u00CAtes vous certain de vouloir supprimer ce client ?')){
            window.location = "deleteClient.php?e="+key;
        }

    }
</script>