我可以将我的aspx页面作为外部模板分隔,以通过jsrender呈现它吗?

时间:2015-04-13 09:13:45

标签: asp.net templating jsrender

我可以将我的aspx页面作为外部模板分隔,以通过jsrender呈现它吗?我无法实现这一点,因为我的aspx页面包含服务器控件

2 个答案:

答案 0 :(得分:0)

您可以使用模板工具,例如:
把手
胡子
或者JsRender
但是你只需要将runat="server"选项放到html对象

答案 1 :(得分:0)

如果要从服务器获取外部模板,要在JsRender中使用,您当然可以从任何类型的服务器页面或请求中获取该模板。

在此处的第二个示例中:http://www.jsviews.com/#compiletmpl “示例:从标记字符串注册模板(从文本文件中的服务器获取)” - 从服务器获取模板page - ... / person.txt

如果服务器页面是 ... person.html ,或 ... person.aspx 或使用路由的路径,或其他什么,这将同样有效。但是,如果它是一个aspx页面,您将不希望将整个页面用作JsRender模板 - 因为它将包含"<form method="post" ... onsubmit="javascript:return WebForm_OnSubmit();"之类的内容。但是你可以在返回的内容中嵌入你的模板,(甚至可以使用服务器控件生成嵌入式模板),然后在将其传递给JsRender之前从完整内容中提取它:

$.get("pathToAspxPage", function(value) {
  personTemplate = $.templates(value.slice(startOfEmbeddedTemplate, endOfEmbeddedTemplate));
  ...