これを行う 1 つの方法は、次のように、データを含む JSON オブジェクトをロードすることです
(URL パラメータを読み取り、JSON オブジェクトを出力するサーバー スクリプト ファイルへの URL を指すこともできます)。
例:
//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"
か、パラメーターを含む URL で load() を使用します。
次に、各テンプレート ファイルにスクリプトを挿入して、変数を読み取り、要求された要素でドキュメントを書き換えます。
コード:
//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>
私はこれをテストしていませんが、うまくいくはずだと思います...
そのスクリプトを各テンプレート ファイルに入れる必要があります。