一种方法是加载包含数据的 JSON 对象,如下所示:(
您还可以将 URL 指向服务器脚本文件,该文件读取 URL 参数并输出 JSON 对象)
例子:
//JQUERY:
$.ajax({
method: "GET",
dataType: "json",
url: "path/to/template.json",
success: function(data) {
var storage = data.template.html;
// do something here
}
});
//JSON FILE:
{
"template":
{
"html":"<div ...></div>",
"some_var":"some_value"
}
}
另一种方式,您可以只加载带有参数的 HTML 文件...例如:将 url 更改为:url: "path/to/my_template.html?id=some_div"
或使用 load() 与带有参数的 URL。
然后在每个模板文件中插入一个脚本来读取变量并用请求的元素重写文档。
代码:
//query.js
function getQueryString() {
var q = {}
var query = window.location.search.substring(1);
var vars = query.split("&");
for (var i=0; i<vars.length; i++) {
var pair = vars[i].split("=");
q[pair[0]]=pair[1];
}
return q;
}
$(document).ready(function() {
var $q = getQueryString();
if ($q.id) {
document.write($($q.id).html());
}
});
//template html files
//head section
<script type="text/javascript" src="query.js"></script>
我还没有测试过这个,但我认为它应该工作......
您需要将该脚本放入每个模板文件中。