我的JSF bean中有这个文本:
"\\name"
在JSF页面上,它看起来像这样:
"\name"
现在,我希望将此字符串传递给javascript函数
function showAlert(name) {
alert(name);
}
<h:commandLink onclick="showAlert(#{myData.name})">
<h:outputText value="#{myData.name}"/>
</h:commandLink>
但是在firebug控制台中我得到错误,其中说:
SyntaxError: illegal character
var a=function(){showAlert(\\name);};var b=function...
这段代码有什么问题?一个反斜杠逃避了其他反斜杠,但是我仍然遇到这个错误。
我该如何解决这个问题?
答案 0 :(得分:1)
问题很简单,生成的javascript缺少引号,使值成为javascript字符串。在JSF / Java完成构建视图之后,在浏览器处理的页面内容中产生的结果javascript调用需要是这样的:
var a=function(){
showAlert('\\name');
};