function($) {
$.fn.listnav = function(options) {
var opts = $.extend({}, $.fn.listnav.defaults, options);
var letters = ['_', 'a', 'ä', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l','m'
, 'n', 'o', 'ö', 'p', 'q', 'r', 's', 't', 'u', 'ü', 'v', 'w', 'x', 'y', 'z', '-'];
和
function createLettersHtml() {
var html = [];
for (var i = 1; i < letters.length; i++) {
if (html.length == 0) html.push('<a class="all" href="#">ALL</a><a class="_"
href="#">0-9</a>');
html.push('<a class="' + letters[i] + '" href="#">' + ((letters[i] == '-') ?
'...' : letters[i].toUpperCase()) + '</a>');
}
和
<%@ page contentType="text/html; charset=utf-8" pageEncoding="utf-8" session="false"%>
德国人物(ä,ö,ü)显示为Ã,¶,ÃƑ¼
你知道我该如何解决这个问题吗?
谢谢!
FIXED:
if(letters[i] == 'ä') {
html.push('<a class="' + letters[i] + '" href="#">Ä</a>');
}
else if(letters[i] == 'ö') {
html.push('<a class="' + letters[i] + '" href="#">Ö</a>');
}
else if(letters[i] == 'ü') {
html.push('<a class="' + letters[i] + '" href="#">Ü</a>');
}
else {
html.push('<a class="' + letters[i] + '" href="#">' +
(letters[i].toUpperCase()) + '</a>');
}
}
答案 0 :(得分:0)
这是PHP还是ASP.NET?
存储üäö等的文件是否真的是UTF-8编码并以这种方式传送到浏览器?或者是UTF-16还是其他编码?我认为您的服务器以其他编码方式为它们提供服务,并且根据它是PHP还是ASP.NET,修复方法会有所不同。
德语字符ß
怎么样?
答案 1 :(得分:0)
谢谢!
整件事与jQuery listnav有关:https://github.com/esteinborn/jquery-listnav
我只是解决了整个问题,您需要在a-z测试中添加一个查询:
function addLetterClass(firstChar, $el, isPrefix) {
if ( /\W/.test(firstChar) ) {
if (firstChar != "ä" && firstChar != "ö" && firstChar != "ü") {
firstChar = '-'; // not A-Z, a-z or 0-9, so considered "other"
}
}
因此,现在“ä,ö,ü”不再理清。 :)