Kendo ui 剑道模板和场地数据不存在

Kendo ui 剑道模板和场地数据不存在,kendo-ui,kendo-template,Kendo Ui,Kendo Template,我有这个样本: <ul id="users"></ul> <script type="text/x-kendo-template" id="myTemplate"> #if(isAdmin){# <li>#: name # is Admin</li> #}else{# <li>#: name # is User</li> #}# </script&g

我有这个样本:

<ul id="users"></ul>

<script type="text/x-kendo-template" id="myTemplate">
    #if(isAdmin){#
        <li>#: name # is Admin</li>
    #}else{#
        <li>#: name # is User</li>
    #}#
</script>

<script type="text/javascript">
    var templateContent = $("#myTemplate").html();
    var template = kendo.template(templateContent);

    //Create some dummy data
    var data = [
        { name: "John", isAdmin: false },
        { name: "Alex", isAdmin: true }
    ];

    var result = kendo.render(template, data); //render the template

    $("#users").html(result); //append the result to the page
</script>
你有什么想法吗


感谢您的帮助

为了确保使用
x-kendo-template
时不会出现问题,请确保验证提供给模板的数据

例如,如果您提供:

var data = [
  { name: "John" }, 
  { name: "Alex", isAdmin: true } 
];
对于模板,您可以修改
模板
以进行如下检查:

<script type="text/x-kendo-template" id="myTemplate">
    #if(typeof(isAdmin) != "undefined" && isAdmin != null){#
      #if(isAdmin && name.length > 0){#
        <li>#: name # is Admin</li>
      #}else if(name.length > 0){#
        <li>#: name # is User</li>
      #} else {#
        <li>No name provided</li>
      #}#
    #}#
</script>

#if(typeof(isAdmin)!=“未定义”&&isAdmin!=null){#
#如果(isAdmin&&name.length>0){#
  • #:name#是Admin
  • #}else if(name.length>0){#
  • #:name#是用户
  • #}否则{#
  • 没有提供姓名
  • #}# #}#

    为了证明这一点。

    “它不起作用”,你这是什么意思?显示不正确,是否产生错误?这对我有用..不,它不适用于这个数据,例如var data=[{name:“John”},{name:“Alex”,isAdmin:true}];您只需要通过模板提供一些数据验证,请参见下面的答案。。
    <script type="text/x-kendo-template" id="myTemplate">
        #if(typeof(isAdmin) != "undefined" && isAdmin != null){#
          #if(isAdmin && name.length > 0){#
            <li>#: name # is Admin</li>
          #}else if(name.length > 0){#
            <li>#: name # is User</li>
          #} else {#
            <li>No name provided</li>
          #}#
        #}#
    </script>