1.假设的数据,基础部分。

  <div id="list1"></div>
<script type="text/tmp" id="tmp5">
{{for}}
<li>id:{{:ID}} name:{{:Name}}</li>
{{/for}}
</script>

var arr = [
{ ID: 1, Name: "tom" },
{ ID: 2, Name: "jack" },
{ ID: 3, Name: "lucy"}
];
var html = $("#tmp5").render(arr);
$("#list1").html(html);


2.jsrender中form和if判断。数据循环中,这是赋值:

  $(".table2").append($("#tmp2").render(item.rankingList));
<table border="1" class="table2">
<tr>
<td>Data1</td>
<td>Data2</td>
<td>Data3</td>
<td>Data4</td>
<td>Data5</td>
<td>Data6</td>
</tr>
<!-- <div id="list2"></div>-->
<script type="text/tmp" id="tmp2">
{{for #data}}
<tr>
<td>{{:#getIndex()+1}}</td><!--排行的个数-->
<td>{{:activityUserNumber}}</td>
<td>{{:nickname}}</td>
<td>{{:numberSum}}</td>
<td><p>my name is : {{:nickname}}</p>
<p>
{{if numberSum>100}}
入选
{{else}}
未入选
{{/if}}
</p>
</td>
</tr> {{/for}} </script>
</table>
 var activityId="79479680213712896";
$.ajax({
type: "GET",
url:"http://voteapi.51odear.com/wx/worksDetail/Ranking?activityId="+ activityId,
dataType:'json',
success: function(data){
var item=data.data;
console.log(item.rankingList)
$(".table2").append($("#tmp2").render(item.rankingList));
/* $("#list2").html($("#tmp2").render(item.rankingList));*/ },error:function (msg) {
alert("error"+JSON.stringify(msg));
}
});
3.分离for,此处使用 tmpl=“#xx”。这个是分离的script的id值~即可。hobbies此处是隐藏
<script type="text/tmp" id="tmp2">
{{for #data}}
<tr>
<td>{{:#getIndex()+1}}</td><!--排行的个数-->
<td>{{:activityUserNumber}}</td>
<td>{{:nickname}}</td>
<td>{{:numberSum}}</td>
<td>{{for tmpl="#tmp3" /}}</td>
<td>{{for hobbies tmpl="#tmp3"/}}</td><!--hobbies此处是隐藏--> </tr> {{/for}} </script>
</table> <script type="text/tmp" id="tmp3">
<p>my name is : {{:nickname}}</p>
<p>我是:
{{if numberSum>100}}
入选
{{else}}
未入选
{{/if}}
</p>
</script>

JsRender练习总结的更多相关文章

  1. 前端渲染利器——JsRender入门

    JsRender不少前端人员应该都用过,它是一个比较强大的模板,不牵涉太多技术依赖,使用起来非常舒服.我本人在前端开发中使用React之前,都是用的它了(实际上我感觉React没有JsViewes好用 ...

  2. 有了jsRender,妈妈再也不用担心我用jq拼接DOM拼接的一团糟了、页面整齐了、其他伙伴读代码也不那么费劲了

    写在前面 说来也很巧, 下午再做一个页面,再普通不过的分页列表,我还是像往常一样,基于MVC环境下,我正常用PagedList.MVC AJAX做无刷新分页,这时候问题就来了,列表数据中有个轮播图用到 ...

  3. knockoutJS学习笔记02:jsRender模板引擎

    上一篇最后提到了模板,并尝试自己编写一个最简单版本:有些朋友可能用过 jqtmpl,这是一个基于jquery的模板引擎,不过它已经不再更新了,而且据说渲染速度比较慢.这里介绍另外一个模板引擎:jsRe ...

  4. Visro 应用的前端模板工具介绍 -JsRender

    1.什么是JsRender: JsRender是一款JavaScript模版引擎,是具有简单直观,功能强大,可扩展的,早期版本是基于JQUERY 写的,后来作者重构了,就不再依赖JQUERY了. 它的 ...

  5. jsRender绑定数据

    首先,引入jquery(很重要),其次引入jsRender.js <script type="text/javascript" src="js/jquery-1.7 ...

  6. javascript模板库jsrender加载并缓存外部模板文件

    前一篇说了jsrender嵌套循环的使用,在SPA的应用中,广泛使用的一个点就是view模板,使用了SPA之后,每个业务页面不再是独立的html,仅仅是一个segment,所以通常这些segment会 ...

  7. javascript模板库jsrender for循环嵌套示例

    最近在参与整合前端的框架,我们知道javascript最强大的模板引擎之一当属jsrender,号称下一代jquery模板引擎的标准实现. 通常在模板merge的过程中,我们会遇到两次乃至三级嵌套的情 ...

  8. jsRender 循环for 和props

    jsrender提供多重循环方式 1.{{for array}}循环数组 2.{{props object}}循环对象 1.for array的使用 <body> <div id=& ...

  9. jsrender for array 和for object语法

    for array 循环数组 循环使用案例 定义数组数据 var data = { names: ["Maradona","Pele","Ronald ...

  10. JsRender for object 语法说明

    JsRender 作为一款JavaScript模版引擎,必不可少的会有循环功能,也就是for,但由于JsRender过于灵活,for竟然可以接受object作为循环对象. {{for Array}}和 ...

随机推荐

  1. (poj 2502) Subway 最短路

    题目链接: 题意:在一个城市里有许多地铁,现在你知道每条地铁的起点  终点与停站点的坐标,知道我们的起始坐标与终点坐标,问加上走路最快到达终点的时间是多少? 方法:求出任意两点的车速时间与步行时间,再 ...

  2. hadoop用户写入文件权限不够的问题

    问题: 普通用户echo写入文件,提示权限不够. 解决方式: sudo tee test.txt <<< "要插入内容"

  3. 使用IDEA2017在Windows下编程并测试Hadoop2.7+Spark2.2+Azkaban

    1. 下载好IDEA HADOOP SPARK 首先,配置IDEA, 在插件管理中使用IDEA在线库安装scala插件, 在在线库直接搜索即可; 其次,配置Maven选项, 将Maven添加到IDEA ...

  4. 关于oracle sql语句查询时表名和字段名要加双引号的问题详解

    转自:http://www.2cto.com/database/201504/387184.html 作为oracle的初学者相信大家一定会遇到这个问题,如图: 明明就是navicat可视化创建了表, ...

  5. Linux取代ifconfig指令的ip指令

  6. python抓取NBA现役球员基本信息数据并进行分析

    链接:http://china.nba.com/playerindex/ 所需获取JSON数据页面链接:http://china.nba.com/static/data/league/playerli ...

  7. git 学习(2) ----- 分支

    当我们进行程序开发的过程中,有时会产生一个新的想法,然后就想马上试验,那我们怎么办? 如果我们继续在现有的基础上进行开发,但最后想法不成功,我们还要进行版本回退?如果我们的新想法,需要很长时间才能实现 ...

  8. Ubuntu 16.04安装MySQL(5.7.18)

    此篇为http://www.cnblogs.com/EasonJim/p/7139275.html的分支页. 安装MySQL前需要做如下了解: 1.MySQL各类型版本的区别,参考:http://ww ...

  9. Go语言的通道(1)-无缓冲通道

    前言: 上文中我们采用了[原子函数]已经[共享锁]两种方式分别对多个goroutine进行了同步,但是在go语言中提供了另一种更好的方式,那就是使用通道(Channel). 一.通道是什么? 其实无论 ...

  10. HDOJ 5639 Transform

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5637 题意:有一个数x,你可以对x进行两种操作,1.反转x二进制其中任意一位2.x^y(y题目给出), ...