环境:xp sp3 ,vs2005,vs2008,iis5.1,oracle,sqlserver.
Ajax创建方法:由XMLHttpRequest创建.跪求高手解决,小弟感激涕零.事情经过:1  一开始 我的Ajax使用的 ScriptManager控件,调用后台静态方法,(本地运行成功运行,但是IIS运行错误.
   错误信息为:不认识PageMethods,我想也是哦,我的IIS只支持2.0.50727)  于是我使用XMLHttpRequest创建,
   就更郁闷了,完全没有反应(本地运行是正确的),我想:我IIS是虚拟目录,难道不支持js,我试了一下,IIS是运行js的.2  我想,难道vs2008编辑的代码,IIS5.1读不懂,于是我换成vs2005编辑(本地运行没有错误),IIS还是老问题.
   我想 IIS5.1出来的时候 没有Ajax吗??
   
   我已经搞了2天一夜,跪求高手帮忙。
   

解决方案 »

  1.   

    看下是不是js的引用路径问题 或者是你的asp.net ajax 的包没有安装好
    看下bin文件夹下是否有相关的dll文件
      

  2.   

    如果你使用的的是ASP.NET AJAX的话,请在你的服务器上装上那个ajaxexter......exe这个安装文件。(就是你的那个vs2005,要实现AJAX功能必须安装的那个.exe文件)
      

  3.   

    我并没有使用到 微软的Ajax控件啊
      

  4.   

    程序里bin文件夹的dll文件都拷贝过去了吗?
      

  5.   

    上传的时候,是不是把HTML js文件以二进制的形式上传?
      

  6.   

    图看不到,要不你的IIS重新装一下
      

  7.   

    真的如此的话,进入http://user.qzone.qq.com/250108139/infocenter
    链接,(是我的QQ空间,进入IIS标题的日志)
    就可以看到了
      

  8.   

    我的写得程序,没有什么特别的,就是那个下拉框三级联动,使用了Ajax,本地运行正确,
    发布到IIS上,查询的时候出现了错误,"System.Data.OracleClient 需要 Oracle 客户端软件 8.1.7 或更高版本"。
      

  9.   

    IE8认识XMLHttpRequest吗?我没测试过,旧的IE版本都是用类似于new ActiveXObject('Msxml2.XMLHTTP')这样的创建对象。你最好把你的项目出错的页面给别人看一下,是不是在客户端就已经出错,出了什么错。如果是服务器端的问题,对于别人来说就比较麻烦了。
      

  10.   

    我说过的,本地调试没有错误的(我完完整整的调试过),如果你要看我创建对象的方法我可以公开的.
    //获得XMLHttpRequest对象
            function GetHttpObj()
            {
                var xmlHttp;            
                try
                {
                    //Firefox, Opera 8.0+, Safari
                    xmlHttp=new XMLHttpRequest();
                }
                catch (e)
                {
                    try
                    {
                        //Internet Explorer6.0+
                        xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
                    }
                    catch (e)
                    {
                        try
                        {
                            //Internet Explorer5.5+
                            xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
                        }
                        catch (e)
                        {
                            alert("您的浏览器不支持AJAX!");
                            return false;
                        }
                    }                                
                }
                return xmlHttp;           
            }
      

  11.   

    你是不是调用websevice里面的方法啊?有没有加入关于webservice节点的
    配置文件
      

  12.   

    [size=48px]我再次声明:我没有使用微软提供的Ajax控件[/size]
      

  13.   

    记得服务器要装Ajax组件才可以哦
      

  14.   

    [size=48px]我请求的页面和相应的页面在同级目录下[/size]function AjaxPage(myid)
            {
                var xmlHttp=GetHttpObj();   
                                        
                
                //处理服务器响应的函数
                xmlHttp.onreadystatechange=function()
                {
                    //数据传送完毕
                    if(xmlHttp.readyState==4)
                    {
                        //页面成功请求
                        if(xmlHttp.status==200)
                        {
                            GetResult(xmlHttp.responseText);
                        }                                                                                
                    }
                }
                
                //请求页面                                    
                var url="GetChilds.aspx";
                
                //请求参数
                var params="id="+myid;
                
                //打开
                xmlHttp.open('POST', url, false);            /*这三行代码 暂时搞不懂*/
                //xmlHttp.setrequestheader("content-length",params.length);                         xmlHttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');            xmlHttp.setRequestHeader("Connection", "close");            //发送
                xmlHttp.send(params);
            }
      

  15.   

    [size=48px]我并没有使用到微软提供的Ajax控件,难道这样创建Ajax也要装Ajax组件吗?[/size]//获得XMLHttpRequest对象
            function GetHttpObj()
            {
                var xmlHttp;            
                try
                {
                    //Firefox, Opera 8.0+, Safari
                    xmlHttp=new XMLHttpRequest();
                }
                catch (e)
                {
                    try
                    {
                        //Internet Explorer6.0+
                        xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
                    }
                    catch (e)
                    {
                        try
                        {
                            //Internet Explorer5.5+
                            xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
                        }
                        catch (e)
                        {
                            alert("您的浏览器不支持AJAX!");
                            return false;
                        }
                    }                                
                }
                return xmlHttp;           
            }
      

  16.   

    [size=48px]我使用的Oracle版本是9i的[/size]
      

  17.   

    楼主你用firebug 看看,很容易找到问题!
    firebug 很强大,可以查看所有请求和响应!(头信息,post 参数,cookie 都能看到)
    还能看到实时html 源代码(即,js 修改后的 html)还有一点, 你看看你的IIS 配置有 .axd  .ashx 的处理程序吗?你这样我们也很难帮你解决!因为你就说了个美反应!具体问题都没找到!
    我们只能过猜!当然,如果你贴一下网址,就更好了!
      

  18.   

    看看你这个目录的权限,本地运行通过,可能在localhost用的是administrator,而地址访问,就可能没有权限,不允许运行了
      

  19.   

    [size=48px]难道 你要访问我的IIS,难道其他电脑可以访问我的IIS,
    以前只在局域网试过,难道通过因特网也可以吗?
    如果可以我要怎么做。。[/size]
      

  20.   

    [size=48px]我知道错误的根源了"System.Data.OracleClient 需要 Oracle 客户端软件 8.1.7 或更高版本"[/size]
      

  21.   

    错误那么明显,你还在这里找Ajax.
      

  22.   

    对了。。web.config得配置好js访问服务有安全策略的
      

  23.   


    这和你用没有用微软提供的Ajax控件有什么必然联系?难道你普通的Ajax就不能直接调用WEBSERVICE了??