Jquery模板 - 否则如果构造

时间:2011-02-14 06:58:26

标签: jquery templates if-statement

我试图在jquery模板块中使用“else if”语句。我在其他示例中看到,如果不是写,否则我们可以放置else。但这对我不起作用,它的抛出语法模板上的错误。任何人都可以帮忙吗?

应该采用的实际方式就像

if(Amount == "")
{
-
}
else if(balance == "")
{
*
}
else
{
Amount
}

我在下面提到了jquery模板语法,我写的是为了实现这一点。

<script id="MyTemplate" type="text/x-jquery-tmpl">
    <tr style="background-color:#EFF3FB"><td onclick="test();">${CardNumber}</td><td>${PostDate}</td>
            <td>{{if (Amount == "")}}-
                {{else(balance == "")}}*                      
                {{else}}${Amount}
                {{/if}}
             </td>
             <td>${Description}</td></tr>
    </script>

3 个答案:

答案 0 :(得分:46)

根据JQuery API语法正确。也许尝试删除'('括号?

{{if Amount == ""}}
   -
{{else balance == ""}}
   *                      
{{else}}
   ${Amount}
{{/if}}

答案 1 :(得分:4)

在循环中执行if语句时,我遇到类似的问题,在循环项上执行if语句。

假设您出于同样的原因遇到问题(我发现您的问题包含一些tdtr,因此您可能会迭代项目并在表格中显示其内容那么这是我的答案:

<script type="text/x-jquery-tmpl" id="jqTemplate">
 <ul>
      {{each data.messagetext}}
         <li>
             Message # ${$index+1}: &quot;${$value}&quot; |
             Test result: {{if $value}}exists{{else}}does not exist{{/if}}
         </li> 
      {{/each}}
    </ul>
</script>

注意{{if $value}}中的美元符号,这是常规{{if value}}上的伎俩

如果你想检查你正在迭代的项目的字段,你可以{{if $value.fieldname}}exists{{else}}does not exist{{/if}}

小提琴http://jsfiddle.net/x2Tac/

jquery-template doc http://www.jquerysdk.com/api/template-tag-if

答案 2 :(得分:3)

正确答案是:

{{else [Condition]}}

确保导入jquery模板js。