Javascript 将类添加到<;tr>;车把手稿
有没有一种简单的方法可以将类添加到handlebar脚本中的表行中 现在我正在循环使用JSON,希望将pagenumber类添加到所有行中Javascript 将类添加到<;tr>;车把手稿,javascript,jquery,handlebars.js,addclass,Javascript,Jquery,Handlebars.js,Addclass,有没有一种简单的方法可以将类添加到handlebar脚本中的表行中 现在我正在循环使用JSON,希望将pagenumber类添加到所有行中 for (var i = 0; i < allData.length; i++) { if (i % 10 == 0 && i != 0) { pageNumber++; } $('.tableRow').
for (var i = 0; i < allData.length; i++) {
if (i % 10 == 0 && i != 0) {
pageNumber++;
}
$('.tableRow').addClass('page' + pageNumber);
console.log("page" + pageNumber);
}
for(变量i=0;i
.tableRow是一个
i我的把手脚本
这一切都很好,但我不能添加到该类。如果我尝试附加到脚本之外的类,效果会很好
HTML代码:
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<link rel="stylesheet" type="text/css" media="screen" href="/includes/css/style.css" />
</head>
<body>
<div class="wrapper">
<div class="tab-container">
<div class="tab-content">
<div id="scriptData"></div>
<script id="template" type="text/x-handlebars-template">
<table class="table-look">
<thead>
<tr>
<th class="Header">Some data</th>
<th class="Header">Some data</th>
<th class="Header">Some data</th>
<th class="Header">Some data</th>
</tr>
</thead>
<tbody>
{{#each this}}
<tr class="tableRow">
<td">{{data}}</td>
<td>{{data}}</td>
<td>{{data}}</td>
<td>{{data}}</td>
</tr>
{{/each}}
</tbody>
</table>
</script>
</div>
</div>
</div>
<script type="text/javascript" src="includes/js/libs/jquery-1.11.3.min.js"></script>
<script src="includes/js/libs/handlebars-v4.0.2.js"></script>
<script type="text/javascript" src="includes/js/custom.js"></script>
</body>
</html>
一些数据
一些数据
一些数据
一些数据
{{{#每个这个}
试试这个
$(document).ready(function(){
$(".table-look tr").each(function(index,row){
// add your class here
$(row).addClass("yourClass");
});
});
我见过车把有点乱,但我自己从来没有用过——所以这似乎是一个很好的机会来掌握它
jQuery不会获取
中的任何元素。这里没有任何供jQuery使用的DOM元素——只有一些文本。这有点令人困惑,因为它看起来像普通的HTML元素,但它只是文本。这是一个剧本
您有2个选项-您可以选择:
- 答:在呈现模板后,循环遍历DOM元素
- B:用把手的
备选方案A:
$(document).ready(function () {
var source = $("#template").html();
var template = Handlebars.compile(source);
var html = template(context);
$('#foo').html(html);
$('.tableRow').each(function(idx,o){
$(this).addClass('page'+Math.floor(idx/2));
});
});
备选案文B:
模板
<tr class = "tableRow {{#page-number}}page{{/page-number}}">
for循环是在$(fOnTeY){}中,请考虑编辑您的帖子,以添加更多关于您的代码所做的解释以及为什么它将解决这个问题。通常不会帮助OP理解他们的问题。如果答案只是猜测,也建议你不要发布答案。一个好的答案会有一个合理的理由来解释为什么它可以解决OP的问题。一定是累了什么的。解决问题的方法是,正如你提到的,将代码移动到Handlebar模板脚本下面
var fooItemNumber = 0;
Handlebars.registerHelper('page-number', function(items, options) {
var out = "page";
return out + Math.floor(fooItemNumber++/2);
});