переменная smarty в коррекции синтаксиса JavaScript - PullRequest
0 голосов
/ 29 ноября 2011

Я пытаюсь использовать эту переменную в JavaScript, но получаю синтаксическую ошибку.

<script type="text/javascript">
{literal} 
$.get("mypage.php", { phone:{/literal} "{$smarty.request.phone}"{literal},
time:{/literal}"{$smarty.request.time}"{literal} } );
{/literal}
</script>

Ответы [ 2 ]

1 голос
/ 29 ноября 2011

Попробуйте:

{literal} 
<script type="text/javascript">

$.get("mypage.php", 
{ phone:"{$smarty.request.phone}"}
);
</script>
{/literal}
0 голосов
/ 03 декабря 2011

Просто для записи: с Smarty3 вам больше не нужно использовать {literal} в блоках кода JS и CSS. В Smarty3 фигурные скобки, окруженные пробелами, не анализируются Smarty, поэтому:

if (a == b) { return c; } // Is not parsed by Smarty3
if (a == b) { return {$c}; } // Only {$c} is parsed
if (a == b) {return c;} // This is parsed because there are no white-spaces near braces.

Ссылка: http://www.smarty.net/v3_overview, "{" и "}" (Javascript) Auto-Escapement

...