|
Posted on 2006-02-19 17:59 H_J_H 阅读(103) 评论(0) 编辑 收藏 引用 所属分类: AJAX系列
第一个问题是关于AjaxPro.Net 的,一直都没有解决,可能今年都不可能解决了. 问题如下: 我的开发环境是vs.net2005,AjaxPro版本是最新的5.11.4.2版本,经常出现的问题是 错误: syntax error 源文件:http://localhost/wddhy/ajaxpro/core.ashx行:3 源代码: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 再就是引用的某个名字空间没有定义:wddhy is not define 但是我明明在后台RegisterTypeForAjax(this.GetType()); 一直未能够找到原因,写信给Ajax.net的作者,他回信是这样说的:他现在的开发环境是2003,所以当我们用2005版本的时候可能会出现问题,因为AjaxPro.2.dll的核心代码有错误,他要到下个月才升级他的版本到2005,所以要等很长的一段时间作者才能够解决这个问题,他建议我使用atlas,因为是MS的,所以兼容应该好点.呵呵 我只好使用atlas,但是也出现了一个问题,是一个简单的问题,就是用js去调用asmx方法的时候同样的提示名字空间is not define!!!真的郁闷,后来到MS的atlas论坛法帖求教,两个星期没人理,可能大家都没有碰到过这样的情况吧!因为我用的是master,后来乱打乱碰倒搞好了,我在master页面里的head里这样: <head runat="server"> <asp:contentplaceholder runat="server" ID="ScriptIncludes"> <atlas:script ID="Script1" runat="server" Path="~/ScriptLibrary/AtlasCompat.js" Browser="Mozilla" /> <atlas:script ID="Script2" runat="server" Path="~/ScriptLibrary/AtlasCompat.js" Browser="Firefox" /> <atlas:script ID="Script3" runat="server" Path="~/ScriptLibrary/AtlasCompat.js" Browser="AppleMAC-Safari" /> <atlas:script ID="Script4" runat="server" Path="~/ScriptLibrary/AtlasCore.js" /> <atlas:script ID="Script5" runat="server" Path="~/ScriptLibrary/AtlasCompat2.js" Browser="AppleMAC-Safari" /> <atlas:Script ID="Script6" runat="server" Path="~/ScriptLibrary/AtlasRuntime.js"/> <atlas:Script ID="Script7" runat="server" Path="~/ScriptLibrary/Atlas.js" /> </asp:contentplaceholder> <link href="style.css" type="text/css" rel="Stylesheet" /> <asp:contentplaceholder runat="server" ID="Head" /> </head> 当你添加内容页的时候他也会添加个 <asp:Content ID="Content1" ContentPlaceHolderID="ScriptIncludes" Runat="Server"> </asp:Content> 这个时候你必须把这个content全部去掉,否则你的atlas将无法工作,这个小问题害死我了 第三个小问题就是是不是可以用atlas能够和ajax.net一样直接调用服务器方法得到返回值呢? 比如ajax可以这样: var a = myNameSpace.myClass.myMethod(参数).value; 但是在atlas里面必须 myNameSpace.myClass.myMethod(参数,onComplete); 再function onComplete(ret) {} 把返回的值包含在onComplete的ret参数里,这样做很不方便 如果我写alert(myNameSpace.myClass.myMethod(参数));得到的是个[object Object] 写alert(myNameSpace.myClass.myMethod(参数).value);得到的是undefine! 晕死,在Ms的atlas论坛发帖还是没有解决,不知道怎么搞了,如果只能够这样的话那太不方便啊
一帆(老鼠粮仓之路) 2005-12-15 10:37 文章来源:http://pwqzc.cnblogs.com/archive/2005/12/15/297681.html
|