2010-12-11 27 views
2

參考jQuery模板,Rick Strahl有一個很好的文字解釋功能over here。在解釋過程中,他繼續說,jQuery支持模板化方式jQuery模板疑問:

在本例中,該模板與 數組合並。當結果 是數組時,模板是 自動應用於每個 數組項目。如果您通過單個數據 項目 - 例如說股票報價 - 模板的工作方式與 完全相同,但僅應用一次。模板 也可以訪問$ data數據項,其中 提供當前數據項和 關於當前正在執行的tempalte的信息。這使得 可以保持模板本身的 上下文以及 也可以將上下文從父 模板傳遞到非常強大的子模板 。

我不太明白這是什麼意思。有人能幫助我理解這一點嗎?

+0

我剛剛看了一下jQuery的模板,它的偉大。感謝分享。 – Bonshington 2010-12-11 19:10:44

回答

0

他在談論嵌套模板;允許在另一個模板中使用一個模板。然後他繼續解釋如何將父模板的上下文傳遞給嵌套在其中的這些子模板。

模板需要傳遞給它們的變量才能顯示動態信息。這些被傳遞的變量,通常是數組或散列/字典,通常被稱爲「上下文」。正如Rick的文章所提到的,您可以在父模板中使用主環境,但也可以將上下文傳遞給子模板。

2

其類似asp:Repeater in asp.net。將數組放入其中,控件根據數組中的每個項目填充自身。在這種情況下,它只是使用jQuery + jQuery數據鏈接。

因此,而不是使用

for(looping) 
$("body").append("<div>"+sometext+"</div>"); 

變化

<script id="stockTemplate" type="text/x-jquery-tmpl">  
<div>${objName}</div> 
</script> 
...and 
$("#somediv").link(someJSON);