现在前端经常会用到卡片类的展示,比如多张银行卡的展示。这个时候需要用到一个统一的前端模板以保证样式的一致,我们只需要通过后台获取一个List,然后向模板中塞数据即可,然后将模板append到一个列表展示的div中。
这里采用的是Jquery.
引入js文件主要如下
<script type="text/javascript" src="jquery.validate.js"></script>
先根据UI图,画一个静态的卡片,调好样式过后,开始使用占位符对需要动态数据改变的地方进行占位,做成模板并隐藏。从后台获取数据后将模板向<div>中进行append,代码如下。
<div id="card_list"></div>
<textarea id="m_template" style="display: none;">
<div class="m_box">
<div class="m_head">
<div class="head_body_text">
<h5 class="head_body_text_left">文本1</h5>
<h5 class="">{0}</h5>
</div>
<div class="head_body_text">
<h5 class="head_body_text_left">文本2</h5>
<h5 class="">{1}</h5>
</div>
</div>
</div>
</textarea>
ajax从后台拿数据后,填充模板,向div中append 模板html 的js代码如下:
url:"-----",
type:"get",
success:function(data){
if(data && data.retCode == '0'){
var list = data.returnVal;
var appendHtml = '';
for(var i = 0; i < list.length; i++){
var ret = userList[i];
var html_template = $("#m_template").text();
appendHtml += $.validator.format(html_template, ret.变量1, ret.变量2);
}
$("#card_list").html(appendHtml);
}
},
如果需要向模板中还要在填充模板的话,这个时候需要唯一确定是在哪一个模板后填充哪一个模板,这个时候需要使append的<div>中的id在js代码中生成,以确定是哪一个div。上代码
<textarea id="m_template" style="display: none;">
<div class="c_box">
<div class="c_head">
<div class="c_body_text">
<h5 class="channel_body_text_left">文本1</h5>
<h5 class="channel_body_merchantNo">{0}</h5>
</div>
<div class="channel_body_text">
<h5 class="c_body_text_left">文本2</h5>
<h5 class="c_body_amount">{1}</h5>
</div>
</div>
<div id='{0}'></div>//需要在这里在动态拼模板,这里的id必须选择一个列表中唯一确定的值。
</div>
</textarea>
1万+

被折叠的 条评论
为什么被折叠?



