使用jQuery模板來(lái)展現(xiàn)json數(shù)據(jù)的代碼
$.fn.parseTemplate = function(data)
{
var str = (this).html();
var _tmplCache = {}
var err = "";
try
{
var func = _tmplCache[str];
if (!func)
{
var strFunc =
"var p=[],print=function(){p.push.apply(p,arguments);};" +
"with(obj){p.push('" +
str.replace(/[\r\t\n]/g, " ")
.replace(/'(?=[^#]*#>)/g, "\t")
.split("'").join("\\'")
.split("\t").join("'")
.replace(/<#=(.+?)#>/g, "',$1,'")
.split("<#").join("');")
.split("#>").join("p.push('")
+ "');}return p.join('');";
//alert(strFunc);
func = new Function("obj", strFunc);
_tmplCache[str] = func;
}
return func(data);
} catch (e) { err = e.message; }
return "< # ERROR: " + err.toString() + " # >";
}
使用方法:
首先聲明這個(gè)模板
<script id="template" type="text/html">
<table style="width:400px;">
<thead>
<tr>
<th>name</th>
<th>age</th>
<th>date</th>
<th>type</th>
</tr>
</thead>
<tbody>
<#
var xing = items.pm;
#>
<tr>
<td>
<#= xing.key #>
</td>
<td>
<#= xing.key1 #>
</td>
<td>
<#= xing.key #>
</td>
<td>
<#= items.pm1 #>
</td>
</tr>
<#
#>
</tbody>
</table>
<br />
<#= items.pm.length #> 記錄
</script>
然后使用
$(function(){
var json={"items":{"pm":{"key":"value","key1":"value1"},"pm1":"pmvalue"}};
var output=$('#template').parseTemplate(json);
$('#cc').html(output);
})
就是這么簡(jiǎn)單!
相關(guān)文章
Jquery實(shí)現(xiàn)無(wú)縫向上循環(huán)滾動(dòng)列表的特效
今天小編就為大家分享一篇關(guān)于Jquery實(shí)現(xiàn)無(wú)縫向上循環(huán)滾動(dòng)列表的特效,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧2019-02-02easyui messager alert 三秒后自動(dòng)關(guān)閉提示的實(shí)例
下面小編就為大家?guī)?lái)一篇easyui messager alert 三秒后自動(dòng)關(guān)閉提示的實(shí)例。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2016-11-11優(yōu)秀js開(kāi)源框架-jQuery使用手冊(cè)(1)
優(yōu)秀js開(kāi)源框架-jQuery使用手冊(cè)(1)...2007-03-03jQuery簡(jiǎn)單實(shí)現(xiàn)iframe的高度根據(jù)頁(yè)面內(nèi)容自適應(yīng)的方法
這篇文章主要介紹了jQuery簡(jiǎn)單實(shí)現(xiàn)iframe的高度根據(jù)頁(yè)面內(nèi)容自適應(yīng)的方法,給出了2種簡(jiǎn)單實(shí)現(xiàn)方法,涉及jQuery針對(duì)頁(yè)面高度的動(dòng)態(tài)獲取與設(shè)置相關(guān)技巧,需要的朋友可以參考下2016-08-08Jquery中使用setInterval和setTimeout的方法
有時(shí)候需要在jquery中調(diào)用setInterval和setTimeout,直接在ready中調(diào)用其他方法,會(huì)提示缺少對(duì)象的錯(cuò)誤,解決方法如下2013-04-04jQuery實(shí)現(xiàn)倒計(jì)時(shí)功能 jQuery實(shí)現(xiàn)計(jì)時(shí)器功能
這篇文章主要為大家詳細(xì)介紹了jQuery實(shí)現(xiàn)倒計(jì)時(shí)功能,jQuery實(shí)現(xiàn)計(jì)時(shí)器功能的方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-09-09jquery地址欄鏈接與a標(biāo)簽鏈接匹配之特效代碼總結(jié)
jquery如何獲取地址欄參數(shù),改變地址欄樣式,接下來(lái),通過(guò)本篇文章給大家分享jquery地址欄鏈接與a標(biāo)簽鏈接匹配之特效代碼總結(jié),需要的朋友可以參考下2015-08-08jQuery EasyUI Pagination實(shí)現(xiàn)分頁(yè)的常用方法
這篇文章主要為大家詳細(xì)介紹了jQuery EasyUI Pagination實(shí)現(xiàn)分頁(yè)的常用方法,感興趣的朋友可以參考一下2016-05-05jQuery實(shí)現(xiàn)模擬flash頭像裁切上傳功能示例
這篇文章主要介紹了jQuery實(shí)現(xiàn)模擬flash頭像裁切上傳功能,結(jié)合實(shí)例形式分析了jQuery圖像剪切與文件傳輸相關(guān)操作技巧,需要的朋友可以參考下2016-12-12