0

ASP.NET ページでGoogle の jstemplateをクライアント側のテンプレート エンジンとして使用しようとしていますが、ASP.NET AJAX と競合しているようです。問題は jstemplate.js ではなく、サポート ファイルとして必要な util.js です。

私は次のように問題を切り分けました::

<%@ Page Language="VB" %>
<body>
    <form id="form1" runat="server">
        <asp:scriptmanager id="ScriptManager" runat="server" enablepartialrendering="true">
            <scripts>
                <asp:scriptreference path="http://google-jstemplate.googlecode.com/svn/trunk/util.js" />
            </scripts>
        </asp:scriptmanager>
    </form>
</body>
</html>

これを実行すると、このエラーが発生します

Microsoft JScript runtime error: 'type' is null or not an object`

のこの行にMicrosoftAjax.js:

 Sys.UI.DomEvent = function Sys$UI$DomEvent(eventObject) {
 ...
 var etype = this.type = e.type.toLowerCase();

<script>(ScriptManager 内ではなく)通常のブロックで JavaScript を参照すると、同じ効果があります。

私はそれを掘り下げていませんが、名前空間の衝突があると思われます。ASP.NET ajax と一緒に Google の util.js ファイルを正常に使用した人はいますか? それとも、代替のクライアント側テンプレート エンジンを検討する必要がありますか?

4

1 に答える 1

2

ASP.net AJAX と jQuery にも同様の問題がありました。問題は $ 名前空間にあったため、jQuery 名前空間の使用に戻す必要がありました。

あなたのエラーは似ているように聞こえるので、google util.js に別の名前空間があるかどうか、または自分用に設定しているかどうかを確認します。

HTH

マット

于 2008-10-26T12:05:03.607 に答える