JavaScript 字符串中的 Smarty {html_options}

Smarty {html_options} in JavaScript string

我试图将生成的 Smarty 选项列表放入 JavaScript 字符串中,但由于 Smarty 生成的新行而中断。似乎我无法在 html_option 生成后对其进行过滤。

任何想法或解决方案,任何人?谢谢!

<script type="text/javascript">
    //Smarty template
    var option_list = '{html_options options=$options_list selected=' + selected_option + '|regex_replace:"/[\r\n]/":""}';
</script>

<script type="text/javascript">
    //Result:
    var option_list = '<option ....></option>   //SyntaxError: unterminated string literal
<option ....></option>
<option ....></option>';
</script>

反引号 (`) 似乎被 TypeScript 编译器更改了,但幸运的是我终于找到了一些解决方法:

<script>
var options = '{html_options|strip ...}';
</script>

但是之后我们还需要设置选中项:

$('#select_id').val(selected_option);