我正在使用jTemplate和jQuery查询.net Web方法,然后在网页中显示结果。

下面显示了所有发生的HTML,带有Template类的DIV是我的模板。然后将实际结果与结果类一起放入DIV中。

<div id="SharepointDocumentSearch" style="display:none;">
    <p>
        Document Search Results
    </p>
    <div class="Results">
        <i>Searching...</i>
    </div>
    <div class="Template" style="display:none;">
        {#foreach $T as document}
            <div>
                <a href="{$T.document.Url}" >{$T.document.Title}</a>
            </div>
        {#/for}
    </div>
</div>


我使用jQuery进行AJAX调用,取回数据,然后运行以下代码:

$("#SharepointDocumentSearch>.Results").setTemplate($("#SharepointDocumentSearch>.Template").html());
$("#SharepointDocumentSearch>.Results").processTemplate(data.d);


尽管AJAX调用成功,并且结果显示在模板中,但模板引擎无法解析该URL。因此,HTML呈现如下:

<div class="Results">
    <div>
        <a href="%7B$T.document.Url%7D">Example 1.doc</a>
    </div>
    <div>
        <a href="%7B$T.document.Url%7D">Mercury documents</a>
    </div>
</div>


奇怪的是,如果我更改模板以使其放入Url值,而不是例如“ Dog”之类的其他属性,它将显示在HTML中。只是当我将其与Url属性一起使用时,这种情况才会发生。

最佳答案

虫子

代码无法在IETester IE6实例中正确运行,但可以在实际IE6上正常运行。

09-16 17:31