由于多行中的数据,Salesforce中出现未终止的字符串文字错误
我使用的是一个标准页面,上面有一个编写JavaScript代码的按钮。它正在调用控制器(类)。
当我使用单击按钮时,出现错误:
A problem with the OnClick JavaScript for this button or link was encountered:
unterminated string literal.
Javascript:
try
{
alert('hi1');
}
catch(Err)
{
alert('Error in creation'+Err);
}
在搜索并进行了一些命中和试验之后,使用了上面的简单警报代码。
我发现了。无论您是否在JavaScript代码和类中使用特定字段,只要我使用的数据之间有一个新行空格,即多次使用数据,都会遇到这个错误。
我在这里发现了类似的问题:unterminated string literal error in salesforce 但以上链接中未指定解决方案。
解决方案
尝试将替身()或甚至URLENCODE()括在您的长文本字段值周围,然后从JS解码?
回到S-Control时代,我一直在作弊,将长文本值放在<p id="myId" style="visibility:hidden">{!mergefield}</p>
中,然后用getElementById引用它们.
如果您真的从JS调用您的控制器,那么您可能有权控制换行符(用什么替换它们?)或者您不需要显示整个错误消息。也许是错误的细节?此外-将有助于正确使用JS调试工具.
相关文章