javascript - JSF 1.2 文本到 Javascript 文本。如何转义反斜杠

标签 javascript jsf jsf-1.2

我的 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...

这段代码有什么问题?一个反斜杠转义了另一个反斜杠,但是我仍然收到此错误。

我该如何解决这个问题?

最佳答案

问题很简单,生成的 JavaScript 缺少引号来使值成为 JavaScript 字符串。例如,在 JSF/Java 完成 View 构建后,最终在浏览器处理的页面内容中生成的 javascript 调用需要是这样的:

var a=function(){
  showAlert('\\name');
};

关于javascript - JSF 1.2 文本到 Javascript 文本。如何转义反斜杠,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26489805/

相关文章:

javascript - 解压后如何取回原始字符串 - Zlib

javascript - 在页面路由上传递同级数据时,它给出了 undefined

eclipse - Eclipse IDE 是否支持 JSF 2.0?

JSF 托管 Bean 命名约定

javascript - 如何按 ReactJS Material 表中嵌套对象中的值进行分组?

jsf - Richfaces tabPanel - 对不同的选项卡使用相同的页面动态更改内容

jsf - 为可重用 JSF 弹出窗口中的有条件禁用字段提交空值

java.util.MissingResourceException : Can't find bundle for base name messages, 语言环境 en_US

java - 如何在不使用 a4j 的情况下维护请求范围 bean 的状态 :keepAlive in richfaces 3 and seam 2?

javascript - 从 Object 调用 Object.Prototype 中的函数