zoukankan      html  css  js  c++  java
  • Handlebars.js registerHelper

      Handlebars.registerHelper('link', function (text, url) {
                text = Handlebars.Utils.escapeExpression(text);
                url = Handlebars.Utils.escapeExpression(url);
                var result = '<a href="' + url + '">' + text + '</a>';
                return new Handlebars.SafeString(result);
            });
            Handlebars.registerHelper('list', function (items, options) {
                var out = "<ul>";
                for (var i = 0, l = items.length; i < l; i++) {
                    debugger;
                    out = out + "<li>" + options.fn(items[i]) + "</li>";
                }
                return out + "</ul>";
            });
    
            Handlebars.registerHelper('select', function (items, options) { 
                var select = "<select class='chosen m-wrap " + options.hash.class + "' name=" + options.hash.name + " id=" + options.hash.id + ">";
                for (var i = 0, l = items.length; i < l; i++) { 
                    select = select + "<option value='" + items[i][options.hash.value] + "'>" + options.fn(items[i]) + "</option>";
                }
                return select + "</select>";
            });
    

      

    <script id="demo" type="text/x-handlebars-template"> 
    {{#select people value="firstName"}} {{firstName}} {{/select }} 
    </script>
    

      

        var source = $("#demo").html();
            var template = Handlebars.compile(source);
    
            var users = [{
                ID: 'think8848', Name: 'Joseph Chan', Num: '1', Status: 1, people: [
                  { firstName: "Yehuda", lastName: "Katz" },
                  { firstName: "Carl", lastName: "Lerche" },
                  { firstName: "Alan", lastName: "Johnson" }
                ]
            }, {
                ID: 'aCloud', Name: 'Mary Cheung', Num: '2', people: [
                  { firstName: "Yehuda", lastName: "Katz" },
                  { firstName: "Carl", lastName: "Lerche" },
                  { firstName: "Alan", lastName: "Johnson" }
                ]
            }];
            var html = template(users[0]);
    
    
            $("#div_demo").append(html);
    

      

      

  • 相关阅读:
    PHP PSR 标准规范
    PHP线程安全与非线程安全的区别(NTS/TS)选择?
    goto 语法在 PHP 中的使用
    linux命令post请求发送json串
    接口日志表sql【我】
    sentinel最简单接入【我】
    Jps命令—使用详解
    MyBatis-Plus Wrapper条件构造器查询大全
    IDEA项目启动不起来也不打印日志【我】
    linux下查看nginx配置文件地址
  • 原文地址:https://www.cnblogs.com/valeb/p/8403602.html
Copyright © 2011-2022 走看看