我想使用javascript和jsp ...
显示特殊字符作为警告框String encodeString = "ss\ncc";
String test = "DisplayNext('"+encodeString+"')";
String NextLink = "<br><a href='#' onclick="+test+"> Next</a>";
那是
function DisplayNext(Next){
alert(Next);
}
虽然我使用了特殊字符,但我无法在警告框中显示它们。我该如何解决这个问题?
答案 0 :(得分:5)
您的代码产生如下内容:
<br><a href='#' onclick="DisplayNext('ss
cc');"> Next</a>
你需要的是:
<br><a href='#' onclick="DisplayNext('ss\ncc');"> Next</a>
如果你想在javascript中换行,它必须在java中看起来像\\n
。所以使用:
String encodeString = "ss\\ncc";
String test = "DisplayNext('"+encodeString+"')";
String NextLink = "<br><a href='#' onclick="+test+"> Next</a>";
还可以考虑使用特殊函数将String对象转义为javascript值。 Google会轻松帮您找到它;)
答案 1 :(得分:2)
如果您的String在java中是URLEncoded,则需要在javascript中使用它。
爪哇:
String s = "ë";
System.out.println(URLEncoder.encode(s, "ISO-8859-1"));
这将打印出%EB
使用Javascript:
alert(unescape('%EB'));
这将打印警告信息中的字符ë