jquery - jQuery 模板中的条件运算符

标签 jquery templates jquery-plugins

新的 jQuery 模板插件是否支持条件(三元)运算符?要根据条件打印简单值,{{if}}/{{else}} 是唯一的选择吗?

我对类似于 <?=($reviewed ? 'ham' : 'spam')?> 的内容感兴趣

最佳答案

是的,您可以在 ${} 中放置任意函数和表达式。模板标签:

Evaluates the specified field (property) on the current data item, or the specified JavaScript function or expression.

${reviewed ? 'ham' : 'spam'}

所以,你可以编写这样的模板:

<script id="movieTemplate" type="text/x-jquery-tmpl">
    <!-- Ternary operator to assign a class -->
    <li class="${Year >= 1990 ? 'orange' : 'yellow'}">
        Title: ${Name}.
        {{each Languages}}
            ${$index + 1}: <em>${$value}. </em>
        {{/each}}
    </li>
</script>

给定像这样的 JavaScript 和 JSON 数据:

var movies = [
{
    Name: "Meet Joe Black",
    Languages: ["French"],
    Year: 1990
}, 
{
    Name: "The Mighty",
    Languages: [],
    Year: 1985
}, 
{
    Name: "City Hunter",
    Languages: ["Mandarin", "Cantonese"],
    Year: 1994
}];

$("#movieTemplate").tmpl(movies).appendTo("#movieList");

这将“橙色”类别应用于年份大于或等于 1990 年的电影,将“黄色”类别应用于年份小于 1990 年的电影。

此处的工作示例:http://jsfiddle.net/andrewwhitaker/dY43s/

关于jquery - jQuery 模板中的条件运算符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4570097/

相关文章:

c++ - 检查运算符是否在 C++ 中重载

c++ - 使用整数值作为模板参数的函数模板中的参数推导

javascript - 用于反转文本框值的 jquery 插件

c++ - 专门的模板是否需要专门的声明?

像 IDE 一样的 jQuery 可拖动侧导航宽度

Javascript动态调用shortcutjs插件的快捷键组合功能

javascript - 如何在结果中突出显示搜索到的字符串?

javascript - 将每个循环连接到另一个循环中

php - 如何将 PHP 变量获取到 AJAX?

javascript - 在 div 中显示 ajax 检索到的 HTML