我想嘗試jQuery模板插件。jquery模板不呈現單個項目
我定義爲這樣一個模板:
<script id="referentTemplate" type="text/x-jquery-tmpl">
<form id="referent-form" method="post" action="#">
<div class="fields">
<input type="hidden" name="referentID" value="${ReferentID}" />
<table>
<tr><td><label for="firstName">First Name</label><br />
<input type="text" name="firstName" value="${FirstName}" /></td>
<td><label for="lastName">Last Name</label><br />
<input type="text" name="lastName" value="${LastName}" /></td></tr>
<tr><td><label for="fullName">Full Name</label><br />
<input disabled="disabled" type="text" name="fullName" value="${FirstName} ${LastName}" /></td></tr>
<tr><td><label for="phoneNumber">Telephone</label><br />
<input type="text" name="phoneNumber" value="${PhoneNumber}" /></td>
<td><label for="email">EMail</label><br />
<input type="text" name="email" value="${Email}" /></td></tr>
</table>
</div>
<div id="validation-message"></div>
<div style="text-align:right; padding: 8px 0px 0px 0px;">
<input type="submit" id="btnSave" class="button" value="Save" />
<input type="button" id="btnCancel" class="button" value="Cancel" />
</div>
</form>
</script>
我想dinamically使用下面的代碼加載這個模板
$("#new-referent").click(function() {
$.ajax({
type: "get",
url: baseUrl + 'MyService.asmx/New',
data: JSON.stringify({}),
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (msg) {
// Get the referent item from the webservice
var referent = msg.d;
// Render the template with the Referent data
var referentTemplate = $("#referentTemplate").tmpl(referent);
//Show the Dialog
$("#referent-dialog").empty().html(referentTemplate).dialog('open');
}
});
});
一切正常,除了一個事實,即形式很不錯輸入不包含從服務器返回的數據。我檢查了與提琴手回來的數據,它包含正確的值這樣的
{"d":"{\"ReferentID\":-1,\"LastName\":\"Abbot\",\"FirstName\":\"John\",\"FullName\":null,\"PhoneNumber\":null,\"Email\":null}"}
我在哪裏做錯了?
感謝您的幫助!
感謝您的回答。在服務器端,我只是使用默認值(用於測試)創建一個新對象,並使用JavaScriptSerializer類將其格式化爲JSON格式。請給我更多關於如何正確格式化JSON結果的信息? – Lorenzo 2011-05-09 15:11:21
我對.NET JSON構建器一無所知。您應該簡單地嘗試確保您的服務器在JSON對象內發送單個JSON對象而不是JSON字符串。 – ThiefMaster 2011-05-09 15:13:01