我有一个网页,其中有一个文本区域供用户输入数据。当在javascript中读取文本区域的值以将其与先前的值进行比较时,我会得到具有平台编码的值('ä' => %e4),而我的数据库中的值是使用UTF-8编码的('ä' => $%c3%a4)。该网页的编码方式为UTF-8,使用 XML 编码属性和 meta 字符集。浏览器也说它正在使用UTF-8编码,但仍然textbox.value是平台编码。 有没有人知道如何告诉用户代理返回textarea.value为UTF-8?
以下方案是否适合您? function encode_utf8( s ) { return unescape( encodeURIComponent( s ) ); } 在你调用encode_utf8函数时,传入文本框的值。这是另一个Stack Overflow答案此处中的建议。虽然问题不完全相同,但解决方案可能适用。