2014-04-28 12 views
2

我在js文件中獲得了json數據,現在我需要將它們傳遞給jtemplate並顯示。這裏是我試過的代碼,但沒有數據顯示越來越如何在jtemplate中讀取javascript中的數據

$.ajax({ 
      url: '/CMananager/getDetails', 
      contentType: "application/json; charset=utf-8", 
      data: { 'ID': ID }, 
      type: 'GET', 
      cache: false, 
      success: function (result) { 

       var placeHolder = $("#templatePlaceHolder"); 

       placeHolder.setTemplateURL("/Templates/Preview/Details.htm"); 


       placeHolder.processTemplate(result.Name); 
      } 

在jtemplate我試圖讀取這樣的數據,是越來越顯示任何內容

<input type="text" id="Details" name="DetailsName" style="float:left; font-size:14px; line-height:42px; padding: 0; text-align: left;width: 80%;" value="{$T.Name}" maxlength="50"/> 

<span id="DetailsNamespan" style="float:left; font-size:14px; line-height:42px; padding: 0; text-align: left;width: 80%;">{$T.Name}</span> 
+0

嘗試用'placeHolder.processTemplate({Name:result.Name});' – nemesv

+0

超級它的工作,但我可以知道原因。爲什麼我必須分配給另一個變量並訪問? – Naruto

回答

3

$T引用的數據對象是什麼你傳遞給模板。

所以,如果你想與{$T.Name}引用您的數據,那麼你需要在其中有一個Name屬性的對象來傳遞:

placeHolder.processTemplate({Name: result.Name}); 

或者,如果你只想要一個簡單的類型來傳遞(字符串,數字等),你可以這樣做,但在這種情況下,你需要使用{$T}來訪問模板:

placeHolder.processTemplate(result.Name); 

而且在你的模板:

<input type="text" id="Details" name="DetailsName" value="{$T}" /> 

<span id="DetailsNamespan">{$T}</span> 
+0

超級.... :)謝謝 – Naruto