尝试通过JS插入非ascii字符时的UnicodeDecodeError

时间:2014-07-22 08:03:13

标签: javascript html django

在Django模板和js中,我需要能够在单击按钮时将任何字符插入文本区域。

下面的代码工作正常,但当我用特殊字符(如æ)替换X时,我收到错误:

UnicodeDecodeError:'utf8'编解码器无法解码字节

模板:

<textarea id = "textarea"></textarea>
<button str = "X" id = "button">Insert X</button>
 ( Fails if X replaced by non-standard char, for example æ)

<script>

 $("#button").click(function(e) {
     str_to_insert = $(this).attr("str");
     $("#textarea").val(str_to_insert);
 })

</script>

Django的:

# coding=UTF-8
import some stuff

def display_my_page(request):
    return render_to_response("my_page.html", {})

错误:

'utf8'编解码器无法解码位置54中的字节0xe6:无效的连续字节

(编辑:我已经包含了更多的错误消息,但现在已将其删除,问题清晰。原来这与答案无关。)

1 个答案:

答案 0 :(得分:0)

问题原来是我用于.html(Notepad ++)的编辑器将编码设置为ANSI。

我将Notepad ++编码更改为&#34; UTF-8&#34;,这使得特殊字符看起来很时髦。然后我重写了它们。