2017-04-25 117 views
1

是否有可能以任何方式渲染具有kendo模板的表格的表格行?在html表格中渲染kendo模板

下面是它应该如何看,但它不会使表里面的行,因为一个<table>不允许<span><script>标签里面

<table class="table-striped"> 
    <span data-template="myTable" data-bind="source: numbers"></span> 
    <script id="myTable" type="text/x-kendo-template"> 
     <tr> 
      <td> 
       <span data-bind="text:number"></span> 
      </td> 
     </tr> 
    </script> 
</table> 


<script> 
    var numbers = [{number:1},{number:2},{number:3}] 
</script> 

回答

1

我能够把<script>标记为表外的模板,并通过添加这样的表内<tbody>标签从<table>结合来解决它:

<table class="table-striped"> 
    <tbody data-template="myTable" data-bind="source: numbers"></tbody> 
</table> 

<script id="myTable" type="text/x-kendo-template"> 
    <tr> 
     <td> 
      <span data-bind="text:number"></span> 
     </td> 
    </tr> 
</script> 
1

你可以做这样的:

<table id="output" class="table table-striped"></table> 


    var tablerows = ''; 
    var template = kendo.template("<tr><td><span>#: number #</span></td></tr>"); 
    var numbers = [{number:1},{number:2},{number:3}]; 
    for (var i=0; i<numbers.length; i++){ 
    tablerows += template(numbers[i]); 
    } 
    $("#output").empty().append(tablerows); 

DEMO

你也可以把循环的模板里面...

+0

谢谢你的答案,它工作的很棒!不过,我想使用MVVM而不是仅仅使用js。看到我的答案 – agDev