如何在Mustache模板中使用jQuery内置函数

我有一个mustache.js模板

 {{#rows}}
  • {{catagorie_name}}
  • {{/rows}}

    在其中,我想将每个{{catagorie_name}}第一个字母作为大写字母。 例:

     india --> India australia-->Australia 

    可能吗?

    假设输入对象是:

     var countries = { "rows": [ { "catagorie_name": "india" }, { "catagorie_name": "australia" }, { "catagorie_name": "spain" } ] }; 

    我们为它添加一个函数:

     var func_var = { "capitalize_name": function () { return firstcap(this.catagorie_name); } }; jQuery.extend( countries, func_var ); // https://stackoverflow.com/a/10384883/1287812 

    大写function :

     function firstcap(str) { // https://stackoverflow.com/a/11370497/1287812 var len = str.length; var re = /^\s$/; var special = true; // signalizes whether previous char is special or not for (var i=0; i=97 && code<=122 && special) { str = str.substr(0, i) + String.fromCharCode(code-32) + str.substr(i+1); special = false; } else if (re.test(str[i])) { special = true; } } return str; } 

    最后,模板:

      

    使用CSS,您可能希望在标签上设置这样的类

     .capitalize {text-transform:capitalize;} 

    然后你的原始代码看起来像