项目代码摘抄,dot的用法之1
function searchTags() {
var list = $('#tags-list-select option:selected').val();
console.log(list);
var keyword = $("#tag-search-input").val();
if($.trim(keyword).length < 1) return false;
var tpl = doT.template($("#tags-tpl").text());
var api = "/api/tags/search/" + list + "/" + keyword + "/0";
$.get(api, function(data) {
var html = tpl(data);
$("#tag-result-list").find("ul").append(html);
});
}
这个搜索方法,做了以下几件事;
1、获取查询条件的两个关键字;
2、用获得的关键字拼接url字符串;
3、初始化dot模板分两步:
a、获得script的文本内容,jquery用text();js用innerHTML;
b、用doT.template()处理,上一步获得的内容;
4、通过ajax的get()方法和第二步拼接的url,获取数据,在回调函数中,将数据填充到模板,之后将模板填充到html中的指定位置;
html中的javascript模板
<!--添加标签显示模板-->
<script id="tags-tpl" type="text/x-dot-template">
[[~ it.items :item:index]]
[[? item]]
<li><input type='checkbox' name='tags' value='[[= item.id]]' title="[[= item.t]]"/> [[[= item.label]]] [[= item.t]]
</li>[[?]]
[[~]]
</script>
参与的项目因为有swig模板和dot模板,由于都是用{{}},所以,dot的{{}}改成了[[]];
it其实相当于参数,出去dot模板中的数据;
项目代码摘抄,dot的用法之1的更多相关文章
- 【转载】借助GitHub托管你的项目代码
PS:自己关注博客园有2年之久了,不久前才申请注册账号.GitHub也差不多一年多了,因英语水平刚刚及格,所以去GitHub没有博客园多,也是几个月前才注册了账号,前几天休息时看到 EdisonCho ...
- 教你阅读Python开源项目代码
为什么要阅读开源代码 阅读 Python 开源项目代码主要有如下三个原因: 在工作过程中遇到一些问题 Google 和 StackOverFlow 等网站找不到解决办法,只能去翻源码. 对某些项目或者 ...
- 手把手教你用SonarQube+Jenkins搭建--前端项目--代码质量管理平台 (Window系统)
前言 网上教程大多介绍的是Linux系统下SonarQube+Jenkins如何使用,这是因为这两款软件一般都是部署在服务器上,而大多数服务器,采用的都是Linux系统.大多数服务器用Linux的原因 ...
- 借助GitHub托管你的项目代码
PS:话说自己注册了GitHub都很久了,却没有怎么去弄,现在系统学习一下,也把自己的学习经历总结下来share给大家,希望大家都能把GitHub用起来,把你的项目代码happy地托管起来! 一.基本 ...
- .NET 项目代码风格要求
原文:http://kb.cnblogs.com/page/179593/ 项目代码风格要求 PDF版下载:项目代码风格要求V1.0.pdf 代码风格没有正确与否,重要的是整齐划一,这是我拟的一份&l ...
- [Asp.net 5] DependencyInjection项目代码分析-目录
微软DI文章系列如下所示: [Asp.net 5] DependencyInjection项目代码分析 [Asp.net 5] DependencyInjection项目代码分析2-Autofac [ ...
- [Asp.net 5] DependencyInjection项目代码分析4-微软的实现(5)(IEnumerable<>补充)
Asp.net 5的依赖注入注入系列可以参考链接: [Asp.net 5] DependencyInjection项目代码分析-目录 我们在之前讲微软的实现时,对于OpenIEnumerableSer ...
- IntelliJ IDEA 乱码解决方案 (项目代码、控制台等)
IntelliJ IDEA 乱码解决方案 (项目代码.控制台等) 最近IDE从eclipse改成IntelliJ IDEA 了,原因是公司大部分人都在用这个IDE,而且一直推荐用,所以尝尝鲜.换的第一 ...
- C# API项目代码正确 ,页面出不来的问题
C# API项目代码正确 页面出不来的问题,截图如下: 解决方法: 在项目里设置好[起始页],就可以了.
随机推荐
- iOS把一个简单的图形变成一个圆
push是定义的一个button push.layer.masksToBounds = YES; push.layer.cornerRadius = 100; push.layer.borderWid ...
- 一步一步学习SignalR进行实时通信_6_案例
原文:一步一步学习SignalR进行实时通信_6_案例 一步一步学习SignalR进行实时通信\_6_案例1 一步一步学习SignalR进行实时通信_6_案例1 前言 类的定义 各块功能 后台 上线 ...
- Android 微信分享信息
随着微信越来越火,越来越多的应用要求有分享到微信的功能.虽然有很多平台都帮集成有分享功能,比如友盟.但是个人觉得友盟集成的东西太多了,自己封装得太过分了,很多资源文件也要带进去,所以感觉不是怎么好,所 ...
- aix 小机运维
zzbank 一个月折腾总结小总结:#+++++++++++++++++++++++++++++++++++++++++++++++++++++++++#+ Ruiy-ge;#+#+ Te ...
- 得到当前网址的域名 ASP.NET
HttpContext.Current.Request.Url.Host.ToString(); http://"是协议名 "www.test.com"是域名 " ...
- 赵雅智_BroadcastReceiver电话监听
AndroidManifest.xml 注冊广播接收者 加入权限 <?xml version="1.0" encoding="utf-8"?> &l ...
- C++关注备注部分知识点
//关注备注部分知识点. #include <iostream> #include <string><span style="white-space:pre&q ...
- Repeater的ItemCommand事件和ItemCreated事件,高手请跳过~
捣鼓这几天,我终于比之前更能区别Repeater的ItemCommand事件和ItemCreated事件了 当Repeater的dataSource是sqldataSource的话,要想触发ItemC ...
- C++_关键字
const static extern 限制-对象隐式类型转换
- QT正则表达式
QT正则表达式有一个问题,当初始状态是不符合正则表达式时,能够输入任意字符,若在输入过程中符合正则表达式,马上进入字符检测状态,即只能接受符合正则表达式的字符.