Javascript函数不接受JSP创建的String

时间:2013-02-19 19:21:27

标签: javascript string jsp

我正在使用JSP来创建动态网页......

在我的一个表单的开头,我有一些javascript需要运行来初始化具有给定属性的页面。

我正在JSP中创建一个Java字符串< %%>我想传递给initializePage javascript函数的块。

以下是代码:

<script>
$(document).ready(function(){
<%String algorithmXMLPath = request.getContextPath() + "/" + PePw.PATH_ALGORITHM_XMLS;
String initParms = "'" + algorithmXMLPath + "'," +
                   " '" + Utilities.getString(reqBean.getMachineType()) + "'," +
                   " '" + Utilities.getString(reqBean.getModel()) + "'," +
                   " '" + Utilities.getString(reqBean.getReasonCode()) + "'";%>
initializePage(<%=initParms%>);
});
</script>

这导致源代码:

initializePage('/PePasswords/data/algorithmXMLs/', '', '', '');

当我运行它时,我在FF错误控制台“Unterminated String literal”中出现错误,它指向initializePage调用的结尾...当我单击错误控制台中的链接时,它实际指向与});

不确定我在这里做错了什么......

1 个答案:

答案 0 :(得分:1)

看起来其中一个变量有一个隐藏的新行“\ n”被传递给JSP调用...

我替换了

Utilities.getString(reqBean.getReasonCode())

Utilities.getString(reqBean.getReasonCode()).replace("\n", "").trim()