在 responseText 上使用 jquery-tmpl
Using jquery-tmpl on responseText
我目前正在尝试填充 jquery-模板,我通过使用 ajax 获得服务器上的另一个文件夹。我想填写通过 .tmpl({..}) 获得的响应文本。遗憾的是那没有用。这就是我所做的。
var a = $.ajax({
method: 'GET',
url : 'TemplateUrl/template.html'
});
$.when(a).done(function(){
$(a.responseText).tmpl({...});
});
responseText 是来自 SharePoint 网站的一段非常简单的 html,看起来像这样
"<div>
<td class="ms-formbody">
<!-- FieldName="{{html FieldName}}"
FieldInternalName = "{{html FieldName}}"
FieldType = "SPFieldText" -->
{{html Text}}
</td>
</div>"
在尝试填写模板时我得到了这个
Uncaught TypeError: Failed to construct 'Text': Please use the 'new' operator, this DOM object constructor cannot be called as a function.
也许你们有想法。会很好。在此先感谢
你好,克里斯
它抛出错误的原因是因为您试图将 temp() 作为函数调用而不是实例化它。
尝试在 $(a.responseText).tmpl({...}).
前面使用新关键字
好吧,一旦我得到答案,答案就没那么难了,也很合乎逻辑。模板引擎需要脚本包装器才能正常工作。所以 html 需要看起来像这样
<script type="text/x-jQuery-tmpl">
<div>
<td class="ms-formbody">
<!-- FieldName="{{html FieldName}}"
FieldInternalName = "{{html FieldName}}"
FieldType = "SPFieldText" -->
{{html Text}}
</td>
</div>
</script>
我目前正在尝试填充 jquery-模板,我通过使用 ajax 获得服务器上的另一个文件夹。我想填写通过 .tmpl({..}) 获得的响应文本。遗憾的是那没有用。这就是我所做的。
var a = $.ajax({
method: 'GET',
url : 'TemplateUrl/template.html'
});
$.when(a).done(function(){
$(a.responseText).tmpl({...});
});
responseText 是来自 SharePoint 网站的一段非常简单的 html,看起来像这样
"<div>
<td class="ms-formbody">
<!-- FieldName="{{html FieldName}}"
FieldInternalName = "{{html FieldName}}"
FieldType = "SPFieldText" -->
{{html Text}}
</td>
</div>"
在尝试填写模板时我得到了这个
Uncaught TypeError: Failed to construct 'Text': Please use the 'new' operator, this DOM object constructor cannot be called as a function.
也许你们有想法。会很好。在此先感谢
你好,克里斯
它抛出错误的原因是因为您试图将 temp() 作为函数调用而不是实例化它。
尝试在 $(a.responseText).tmpl({...}).
前面使用新关键字好吧,一旦我得到答案,答案就没那么难了,也很合乎逻辑。模板引擎需要脚本包装器才能正常工作。所以 html 需要看起来像这样
<script type="text/x-jQuery-tmpl">
<div>
<td class="ms-formbody">
<!-- FieldName="{{html FieldName}}"
FieldInternalName = "{{html FieldName}}"
FieldType = "SPFieldText" -->
{{html Text}}
</td>
</div>
</script>