<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title></title>
<link rel="stylesheet" href="">
</head>
<body>
<textarea style="display:none;">
<ul>
<li>
<a href="javascript:" data-id="$couponid$">
<img src="$imgsrc$" width="240" height="180" />
<p>$traffic$</p>
<p>$buynum$人购买</p>
<div>
<div><del class="g6 db">¥$cost$现金券</del>$discount$折</div>
<strong class="cr price r pr20">¥$price$</strong>
</div>
<h3>$resname$</h3>
</a>
</li>
</ul>
</textarea>
</body>
<script src="http://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js" type="text/javascript" charset="utf-8" ></script>
<script type="text/javascript" charset="utf-8" >
// var date="[{"status": "IN_PROGRESS", "loan_limited": "5个月", "load_no": "123131231", "payed": "1个月", "amount": 15000, "loan_time": "2016-06-17"}, {"status": "DONE", "loan_limited": "1个月", "load_no": "123131123131231", "payed": "1个月", "amount": 15000, "loan_time": "2016-05-17"}, {"status": "IN_PROGRESS", "loan_limited": "5个月", "load_no": "123131231231", "payed": "1个月", "amount": 25000, "loan_time": "2016-06-10"}]"
var JSON = {
url: "ajax.php?author=www.zhangxinxu.com",
data: [{
couponid: "111",
imgsrc: "test1.JPG",
resname: "俏江南 仙乐斯广场",
traffic: "肇嘉浜路沿线",
buynum: 180,
cost: 100,
discount: 8.5,
price: 85
}, {
couponid: "222222",
imgsrc: "222222.jpg",
resname: "申城五月天",
traffic: "静安寺",
buynum: 0,
cost: 100,
discount: 8.0,
price: 80
}, {
couponid: "3",
imgsrc: "go-baby.jpg",
resname: "申城五月天",
traffic: "静安寺",
buynum: 0,
cost: 100,
discount: 8.0,
price: 80
}]
}
String.prototype.temp = function(obj) {
return this.replace(/\$\w+\$/gi, function(matchs) {
var returns = obj[matchs.replace(/\$/g, "")];
return (returns + "") == "undefined"? "": returns;
});
};
var htmlList = ''
// textarea中的模板HTML
, htmlTemp = $("textarea").value;
JSON.data.forEach(function(object) {
htmlList += htmlTemp.temp(object);
});
$("ul").innerHTML = htmlList;
</script>
</html>
$('textarea').val()
并没有
ul
已经改好。弱弱问句把 String.prototype.temp = function(obj) 改成temp=function(obj) 怎么就不行了?
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title></title>
<link rel="stylesheet" href="">
</head>
<body>
<ul>
<li>
<p>$loan_limited$</p>
<p>$load_no$</p>
<p>$payed$</p>
<p>$amount$</p>
<p>$loan_time$</p>
</li>
</ul>
</body>
<script src="http://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js" type="text/javascript" charset="utf-8" ></script>
<script type="text/javascript" charset="utf-8" >
var data='[{"status": "IN_PROGRESS", "loan_limited": "5个月", "load_no": "123131231", "payed": "1个月", "amount": 15000, "loan_time": "2016-06-17"}, {"status": "DONE", "loan_limited": "1个月", "load_no": "123131123131231", "payed": "1个月", "amount": 15000, "loan_time": "2016-05-17"}, {"status": "IN_PROGRESS", "loan_limited": "5个月", "load_no": "123131231231", "payed": "1个月", "amount": 25000, "loan_time": "2016-06-10"}]';
var dataJson=JSON.parse(data);
//console.log(dataJson);
String.prototype.temp = function(obj) {
return this.replace(/\$\w+\$/gi, function(matchs) {
var returns = obj[matchs.replace(/\$/g, "")];
return (returns + "") == "undefined"? "": returns;
});
};
var htmlList = ''
, htmlTemp = $("ul").html();
console.log(htmlTemp.temp(dataJson));
dataJson.forEach(function(item) {
htmlList += htmlTemp.temp(item);
});
$("ul").html(htmlList);
</script>
</html>