jQuery 在 smarty 代码上抛出未捕获的错误

jQuery throws uncaught error on smarty code

我收到以下错误消息

Uncaught Error: Syntax error, unrecognized expression: [value={if isset($smarty.post.id_state)}{$smarty.post.id_state|intval}{/if}]

源自此代码:

$('.id_state option[value={if isset($smarty.post.id_state) {$smarty.post.id_state|intval}{/if}]').prop('selected', true);

我不确定它为什么会抛出这样的错误,因为它后面的代码(字面意思是下一行)非常有效

以下代码正常运行

$('.id_state_invoice option[value={if isset($smarty.post.id_state_invoice)}{$smarty.post.id_state_invoice|intval}{/if}]').prop('selected', true);

您在 isset() 之后缺少结束符 }。

您的代码:

{if isset($smarty.post.id_state) {$smarty.post.id_state|intval}{/if}

需要:

{if isset($smarty.post.id_state)}{$smarty.post.id_state|intval}{/if}