我使用$('#id').val().length;
时出现此问题,当我使用2
,æ
和ø
等字符时,它会返回å
。
有人可以告诉我为什么以及如何让它像(一)char一样工作?
答案 0 :(得分:1)
答案 1 :(得分:1)
我认为你使用了额外空间或该角色的任何一面。
<p id="t">æ</p>
$('#t').text().length
这项工作正常。
答案 2 :(得分:1)
我怀疑其他地方正在发生,这不是编码问题。
我拒绝相信这是一个jQuery问题(请参阅http://jsfiddle.net/KLzYf/了解我的jsutification)。
以下原始HTML将报告“1”:
<html>
<head>
<meta http-equiv="content-type" content="text/html;charset=utf-8">
</head>
<html>
<body>
<input type="text" value="æ" id="test"/>
</body>
<script type="text/javascript">
alert(document.getElementById("test").value.length);
</script>
</html>
我有兴趣看一些HTML /其他代码。例如,要进行一些测试,以下内容将为您提供什么
alert("æ".length); //=1?
alert('"' + $('#id').val() + '"'); //are there any spaces/other chars?
此外,如果您在HTML上查看源代码,输入的内容会是什么样的。