0

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

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

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

这是代码:

<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 错误控制台“未终止的字符串文字”中收到一个错误,它指向 initializePage 调用的结尾...当我单击错误控制台中的链接时,它实际上指向带有 } 的行);

不知道我在这里做错了什么......

4

1 回答 1

1

Looks like one of the variables had a hidden new line "\n" being passed into the JSP call...

I replaced

Utilities.getString(reqBean.getReasonCode())

with

Utilities.getString(reqBean.getReasonCode()).replace("\n", "").trim()
于 2013-02-19T20:15:37.783 回答