艺术模板 art-template-web
艺术模板 art-template____jQuery 项目可用
最快的模板渲染引擎
兼容 ejs 语法
推荐语法
{{each arr}}
{{$value}} ---- {{$index}}
{{/each}}
{{if arr}}
{{arr}}
{{/if}}
1. 下载或者安装
2. 引入 template-web.js 库
<script type="text/javascript" src="https://cdn.bootcss.com/jquery/1.12.4/jquery.min.js"></script>
<script type="text/javascript" src="./js/template-web.js"></script>
<script type="text/javascript" src="./js/jquery_ajax.js"></script><!-- 注意编写顺序 -->
2. 创建模板代码
1) 创建 script 标签,将其 type 改为 text/html
2) 设置一个 id 属性
3) 写模板代码
const arr = [{name: 'jaek', age:20}, {name:'rose', age:18}];
const obj = {name: 'jaek', age:20};
3. template(元素id, {要渲染的数据}) 将模板代码解析为 标签字符串
传一个数组 data, 接的就是一个同名的数组 data[0].name
传一个对象 obj,接的就是一个同名的对象 obj.name
返回的是一个 htmlStr,用于追加到 页面生效
4. 将生成的 标签字符串 渲染到 页面上生效
index.html
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8"/>
<title>jQuery 中的 ajax</title>
<link rel="stylesheet" href="./css/index.css">
</head> <body>
<div id="outer_box">
<select id="province">
<option>请选择省份</option>
</select>省 <select id="city">
<option>请选择市</option>
</select>市 <select id="county">
<option>请选择区(县)</option>
</select>区(县)
</div> <script type="text/html" id="templateScript">
<option>{{firstOption}}</option>
{{each data}}
<option value="{{$value[name]}}">{{$value.name}}</option>
{{/each}}
</script> <script type="text/javascript" src="https://cdn.bootcss.com/jquery/1.12.4/jquery.min.js"></script>
<script type="text/javascript" src="./js/template-web.js"></script>
<script type="text/javascript" src="./js/jquery_ajax.js"></script> <!-- 注意编写顺序 -->
</body>
</html>
jquery_ajax.js
$(function () {
const $province = $("#province");
const $city = $("#city");
const $county = $("#county"); // 进入页面 首先渲染省份
$.get("http://localhost:3000/province", function({code, data}){
if(code === 200){
const htmlStr = template(
'templateScript',
{data, firstOption: '请选择省份', name: 'province'}
);
$province.html(htmlStr);
}else{
alert(data); // 网络不稳定,请刷新重试
};
}); // 省 改变出现 市
$province.on("change", function(){
const province = this.value; /* <option value="11">北京</option> */
$.get('/city', {province}, function({code, data}){
if(code === 200){
const htmlStr = template(
'templateScript',
{data, firstOption: '请选择市', name: 'city'}
);
$city.html(htmlStr);
}else{
alert(data); // 网络不稳定,请刷新重试
};
});
}); // 市 改变出现 县
$city.on("change", function(){
const province = $province.val(); /* <option value="11">北京</option> */
const city = $city.val(); /* <option value="undefined">鞍山市</option> */
$.get('/county', {province, city}, function({code, data}){
if(code === 200){
const htmlStr = template(
'templateScript',
{data, firstOption: '请选择区县', name: 'county'}
);
$county.html(htmlStr);
}else{
alert(data); // 网络不稳定,请刷新重试
};
});
});
});
艺术模板 art-template-web的更多相关文章
- art template前端模板引擎
偶然看到后台有一段代码 采用的是art template的模板引擎 地址为 http://aui.github.io/artTemplate/ 这段代码很简洁 var html = template( ...
- DjangoMTV模型之视图层views及模板层template
Django视图层中views的内容 一个视图函数,简称视图,是一个简单的Python 函数,它接受Web请求并且返回Web响应.响应可以是一张网页的HTML内容(render),也可以是一个重定向( ...
- 《JAVA设计模式》之模板模式(Template)
在阎宏博士的<JAVA与模式>一书中开头是这样描述模板方法(Template Method)模式的: 模板方法模式是类的行为模式.准备一个抽象类,将部分逻辑以具体方法以及具体构造函数的形式 ...
- ASP。netcore,Angular2 CRUD动画使用模板包,WEB API和EF 1.0.1
下载Angular2ASPCORE.zip - 1 MB 介绍 在本文中,让我们看看如何创建一个ASP.NET Core CRUD web应用程序与Angular2动画使用模板包,web API和EF ...
- Django 模板(Template)
1. 模板简介 2. 模板语言 DTL 3. 模板继承 4. HTML 转义 5. CSRF 1. 模板简介 作为 Web 开发框架,Django 提供了模板,可以很便利的动态生成 HTML.模版系统 ...
- Django笔记&教程 3-1 模板(Template)基础
Django 自学笔记兼学习教程第3章第1节--模板(Template)基础 点击查看教程总目录 1 介绍 模板文件:让Django能够自动生成html代码 作为一个web框架,Django需要需要在 ...
- 模板(Template)
最近阅读google chromium base container stack_container代码,深刻感觉到基础知识不扎实. // Casts the buffer in its right ...
- 重载(Overloading)以及模板(Template)
继续<C++ premier plus>的学习 (1)函数重载,通俗来说,就是相同的函数名字名下,存在多个函数,要使得这成立,各个同名函数必须形参列表(也称为"签名", ...
- Django——模板层(template)(模板语法、自定义模板过滤器及标签、模板继承)
前言:当我们想在页面上给客户端返回一个当前时间,一些初学者可能会很自然的想到用占位符,字符串拼接来达到我们想要的效果,但是这样做会有一个问题,HTML被直接硬编码在 Python代码之中. 1 2 3 ...
随机推荐
- django上下文处理器的基本使用
1.定义一个方法 2.在django里面的settings.py里面修改配置文件 3.最后在模板里面调用 操做步骤如下: 这是在settings.py里面配置的文件 在模板里面调用上下文处理器
- C# - 多线程(基础)
多线程 基础(Multithreading) 一些基本的关于线程和与其相关的概念 位)的变量赋值,这个操作就是原子性的.因为它可以一次性填充64位的二进制数据到栈上,属于一步完成,不会发生断裂.而假如 ...
- LESS知识总结
知识体系 1.认识less 2.使用less 3.变量( variables ) 4.混合 ( mixins ) 5.嵌套规则 ( nested-rules ) 6.运算(operation ...
- jmeter接口入门操作手册
基础操作手册:Windows Mr丶菜鸟 1.下载jmeter ,jmeter是一款基于java的开源工具,可以测试接口和性能,需要jdk环境,下载jmeter地址:https://jmeter.a ...
- GMM与EM共舞
GMM,即高斯混合模型(Gaussian Mixture Model),简单地讲,就是将多个高斯模型混合起来,作为一个新的模型,这样就可以综合运用多模型的表达能力.EM,指的是均值最大化算法(expe ...
- ssh-copy-id 拷贝用户秘钥
生成秘钥 ssh-keygen -t [rsa|dsa] 将会生成密钥文件和私钥文件 id_rsa,id_rsa.pub或id_dsa,id_dsa.pub 将 .pub 文件复制到B机器的 .ssh ...
- PHP中的排序函数sort、asort、rsort、krsort、ksort区别分析
sort() 函数用于对数组单元从低到高进行排序. rsort() 函数用于对数组单元从高到低进行排序. asort() 函数用于对数组单元从低到高进行排序并保持索引关系. arsort() 函数用于 ...
- Linux Django项目测试
步骤 django项目: 依赖包 [root@web01 ~]# yum install openssl-devel bzip2-devel expat-devel gdbm-devel readli ...
- 【原创】大叔问题定位分享(1)HBase RegionServer频繁挂掉
最近hbase集群很多region server挂掉,查看其中一个RegionServer1日志发现,17:17:14挂的时候服务器压力很大,有大量的responseTooSlow,也有不少gc,但是 ...
- linux 乌班图 nginx php直接下载下来
location ~ \.php(.*)$ { include snippets/fastcgi-php.conf; # # # With php-fpm (or other unix sockets ...