根據我的經驗,似乎在服務器和客戶端模板中有很多html的重複。在客戶端,我的意思是像Jquery模板,而服務器端我的意思是使用html的服務器端變量。如何避免客戶端和服務器端的HTML中的重複?
在下面的代碼中,foreach循環在每個頁面加載時執行並用於創建項目列表。請注意,它圍繞着一個包含用於動態值的可變佔位符的HTML塊。
在foreach循環下面我們有一個具有完全相同html結構的Jquery模板,唯一不同的是變量語法。
有沒有辦法「合併」它,所以我不必在這兩種情況下重複相同的HTML標記結構?在兩種情況下,使用完全相同的html塊似乎都是錯誤的。
前
<h1>Portfolio's</h1>
<ul id="portfolioList" class="portfolio">
<% foreach (Portfolio p in Portfolios)
{ %>
<li>
<span class="delete">[X] </span>
<a href="/portfolioDetails.aspx?p=<%=p.PortfolioId %>"><%=p.Name %></a>
</li>
<% } %>
</ul>
<!-- portfolio template -->
<script id="portfolioTemplate" type="text/x-jquery-tmpl">
<li>
<span class="delete">[X] </span>
<a href="/portfolioDetails.aspx?p=${PortfolioId}">${Name}</a>
</li>
</script>
您可以舉一個例子來說明避免第二個選項的附加ajax請求的技巧嗎? – chobo 2012-01-08 01:49:44
我添加了一個例子。 – 2012-01-08 11:04:35
這實際上工作得很好,謝謝! – chobo 2012-01-08 18:43:02