我正在尝试使用Google 的 jstemplate作为 ASP.NET 页面上的客户端模板引擎,它似乎与 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 文件?还是我应该只研究替代的客户端模板引擎?