将smarty变量分配给jquery选择器

时间:2015-10-25 08:52:59

标签: javascript jquery jquery-selectors smarty

我使用以下代码将smarty变量分配给jquery选择器。

{literal}
    <script type="text/javascript">
        $( document ).ready(function() {
            var prodid = {/literal}{$product.product_id}{literal};

            $( "#option_" + prodid + "_1252" ).change(function() {
                if(4281 == $(this).val()){       
                    //some code    
                }
            });    
        });
    </script>
{/literal}

我可能正在做一些语法错误,因为即使我做对了

var prodid = 766;
选择器中的

我得到了这个

$( "#option_" + prodid + "_1252" ).change(function() {

而不是

$( "#option_766_1252" ).change(function() {

关于我做错的任何想法?

1 个答案:

答案 0 :(得分:1)

您的jquery选择器中有一个不必要的var声明。试试这个:

$( "#option_" + prodid + "_1252" ).change(function() {

Smarty不会为您解析javascript,因此除非您这样做,否则无法获得$( "#option_766_1252" )

$( "#option_{/literal}{$product.product_id}{literal}_1252" ).change(function() {