1

当我尝试从 Smarty 页面调用 Javascript 函数时出现此错误。我知道这个错误通常是什么 - 但我不明白为什么会在这种情况下发生。

以下列方式调用引发错误的函数:

<a href='#' onClick="showActualSize({$id_product},'{$realsize|escape:'htmlall'}');">Actual Size</a>

在这种情况下,变量具有以下值;

$id_product = 544; $realsize = "英制:LR14 公制:MN1400";

我曾经escape:'htmlall'转义可能出现的任何特殊字符,$realsize但如您所见,此示例中没有任何特殊字符。

但是,当我查看页面源代码时,$realsize变量中似乎有新行,因为源代码如下所示:

<li><a href='#' onClick="showActualSize(544,'Imperial: LR14
Metric: MN1400
');">Actual Size</a></li>

我是否正在查看一些导致错误的隐藏字符?我怎样才能解决这个问题?

4

1 回答 1

1

使用{$realsize|escape:'htmlall'|escape:javascript}已通过删除导致该问题的换行符来解决该问题。

于 2012-12-22T12:46:54.613 回答