<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<head>
<style type="text/css">
#template {
display: none;
}
</style>
<script
src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
<script
src="http://documentcloud.github.com/underscore/underscore-min.js"></script>
</head>
<body>
<div id="template">
<div id="event">
<button><%= title %></button>
</div>
</div>
<button id="cmd_create_event" name="cmd_create_event" type="button">Create
a new `EventModel`</button>
<div id="div_event_list"></div>
<script type="text/javascript">
$(document).ready(function() {
$("#cmd_create_event").click(function() {
var template = $("div#template div#event").children().html();
var compiled = _.template(template);
$("#div_event_list").html(compiled({
title : "New Event Title"
}));
});
});
</script>
</body>
</html>
html()
呼び出しがこれを返さない場合、上記は完全に機能します。<%= title %>
HTMLで記述したとおりに正確 に返すようにしたいので、アンダースコアを使用してテンプレートを作成するために使用できます。<button><%= title %></button>
どのように?
あるいは、もっと良い方法はありますか?追加の依存関係なし(jquery /アンダースコアのみ)。(多すぎる)余分なコードなし。