语言都是相通的,你可以下载一个asp写的小偷程序,如天气小偷或新闻小偷什么的研究学习一下。这种程序一般是从请求到的页面html代码中进行采集自己需要的信息。可以解决你的问题

解决方案 »

  1.   

    好晕啊。这个比较急用。而且以前都是搞C/s开发,对WEB一点也不熟。而且还要搞复古的ASP。
    没时间慢慢研究啊。
      

  2.   

    你的WEB Service应该有loginResult这么个类,实例化下来接收loginCheck()的返回对象
    通过对象就可以取到值了
      

  3.   

    不知道楼主的ASP是怎么请求SERVICE的?是在服务短调用对象通过HTTP掉用SERVICE呢?
    还是在客户端通过脚本访问?服务端调用,你就要看你用什么服务对象去访问SERVICE了.我可以给你客户端的办法. SERVICE提供对脚本掉用支持
    在SERVICE的类和方法上加上属性标记.
    在ASP页上 引用脚本 指向SERVICE/JS 
    writer.WriteLine("<script src='../../script/AJAXSERVICE.js' type='text/javascript'></script>");
            writer.WriteLine("<script src='ElmService.asmx/js' type='text/javascript'></script>");我这是WRITE出来的 你也可以直接写页面上'ElmService.asmx 就是SERVICE
    简单情况下 只要这个 就可以了  你可以自己看一下 这个请求 得到的就是一段脚本,里边哈返回的结果类型都封装好了.
    这个SERVICE需要
    using System.Web.Script.Services;
    using System.Web.Script.Serialization;
    这两个引用自System.Web.Extensions.dll
    没有的话去MS下载, 在MS的AJAX包中就包含SERVICE.CS代码中
    [ScriptService] 
    public class ElmService : System.Web.Services.WebService
    {
      [WebMethod(EnableSession = true)]
        public string GetElm(string inComType, string inActElmID, string inEftElmsID, string inParamList)
        {
    }
    //注意[ScriptService]这个标记  /JS请求就是靠这个标记才输出脚本 脚本内容是对服务的类和方法以及返回结构的封装
    我上边还注册了一个脚本AJAXSERVICE.js' 
    这个脚本是我自己整理的,其实它来自MS的AJAX框架.默认如果在ASPX页面上有MSAJAX框架,这个脚本会自动引用近来.我的项目是没有这个框架的,所以我手动整理了这个脚本.
    其内容很牛B ,是MS对.NET基础数据类型的封装. 服务输出的脚本很有限,但是结合这个脚本使用.可以在SCRIPT使用.NET的数据类型和方法.和在CS代码中的书写是一样的.这个脚本要在服务/JS之前加载.
    这样 服务的返回结果就可以随便使用了  还可以随便扩展.如果需要AJAXSERVICE.js 联系我 我MAIL给你
      

  4.   

    如果你只使用最简单的数据类型返回 那很简单 要返回复杂的类型对象或者结构数组  就必须要
    AJAXSERVICE.js'
      

  5.   

    JS是弱类型 所以你返回 INT STRING BOOL都没问题 不需要AJAXSERVICE.js'  直接也可以用
      

  6.   

    我问的ASP不是ASP.net.
    fengyecsdn(街头+烟头=孤伤) 说的是.net的吧.
      

  7.   

    ^^^^^^^^真服你  在客户端来说 都是JS  有ASP和ASP.NET的区分么?
      

  8.   

    我上边讲的东西 可是我花很久研究的  MVP专家为这个问题可是要讲4节课的
      

  9.   

    ASP好像不支持WEB SERVICE应用吧,出第三方类库支持了?
    WEBSERVICE跟JS有关系么? MVP专家花4节课把AJAX塞进WEBSERVICE里? 晕特了
      

  10.   

    对XML处理,提取出有用字段. 我发现这个办法特别有效.包括做小偷程序都可以.
      

  11.   

    ericfine(http://ericfine.cnblogs.com/) 
    wapit(前途是光明滴,道路是曲折滴) 
    楼上二位看清题了么?
      

  12.   

    楼主是怎么调用SERVICE的呢???
    是不是不会用啊?再给你说说怎么调用脚本.
    从脚本调用WEB SERVICE返回的结果不是单值
    应该是一个事件,包括返回结果,返回错误,请求参数等等<script src='ElmService.asmx/js' type='text/javascript'></script>得到的脚本中是对 SERVICE的封装.
    我上边说了
    SERVICE.CS代码中
    [ScriptService] 
    public class ElmService : System.Web.Services.WebService
    {
      [WebMethod(EnableSession = true)]
        public string GetElm(string inComType, string inActElmID, string inEftElmsID, string inParamList)
        {
    }那么在脚本中 也就有这个对象
    ElmService
    和JS方法
    ElmService.GetElm(ElmService.GetElm( inComType, inActElmID, inEftElmsID, ceparamlist, CE_ShowResult, CE_ShowError); 
    你可以看到这个JS方法中的参数和SERVICE的参数基本一样但是多了两个
    后两个其实是脚本方法名,这需要你自己写.
    我这里是
    function CE_ShowError( inError) //处理调用SERVICE超时或者处理错误结果
    {
        alert("服务请求出现错误,也许是因为您的网络出现问题。\r\n您可以稍后再试一次,或者检查您的网络。\r\n The Request has some error, may be your network has some problem. \r\n You can try it later, or cheak your network.");
        alert("ErrorMessage:"+inError.get_message());
        CE_ShowResultDo();  
    }
    function CE_ShowResult( inServiceResult)// 处理SERVICE返回的正常结果.
    {
        var tmpstrkk=inServiceResult.replace("<?xml version=\"1.0\" encoding=\"utf-8\" ?>","").replace("<string xmlns=\"http://tempuri.org/\">" ,"").replace("</string>" ,"");
        var ce_ResultBodyArray=CE_GetResultArray(tmpstrkk);
        for (p=0;p<CE_EftElmsIDandHTML.length;p++)
        {
            for (q=0;q<ce_ResultBodyArray.length;q++)
            {
                var tmpidkk=CE_EftElmsIDandHTML[p].ElmID;
                var tmpidkkk=ce_ResultBodyArray[q].ElmID;
                if (tmpidkk.toUpperCase()==tmpidkkk.toUpperCase())
                {
                     CE_EftElmsIDandHTML[p].ElmHTML=ce_ResultBodyArray[q].ElmHTML;
                }  
            } 
            
        }
        CE_ShowResultDo();   
    }
    就这样了
    后边我补充一下.
    我前边说了 
    AJAXSERVICE.js是MS对.NET基础数据类型的封装.
    不是说你在前台脚本要用.NET开发.
    比如 SERVICE 返回一个数据
    public string GetElm(string 
    那么function CE_ShowResult( inServiceResult)中参数inServiceResult 就是字符串类型.
    JS是弱类型,对STRING类型数据可以直接使用.但是如果你想使用 STRING的复杂操作,或者返回结果是个复杂数据类型.你该如何处理呢?
    所以就要用到AJAXSERVICE.JS了.
    比如我们SERVICE中返回了复杂的类型
    public class aabb
    {
      public string name;
      public DateTime SiTime; 
      public int count;
    }
    那么在JS中就可以用inServiceResult.name  inServiceResult.SiTime等访问.
    最重要的是可以使用类似.NET的方法直接处理结果.如
    inServiceResult.SiTime.ToShortTimeString();
    对基本数据 JS对数字类型已经提供了一些方法,但是比.NET来说还是少了很多.
    所以在这里数字型变量,(脚本中封好了INT类型)就可以使用更多更先进的封装方法
      

  13.   

    在你自己写的事件代码中使用 ElmService.GetElm( inComType, inActElmID, inEftElmsID, ceparamlist, CE_ShowResult, CE_ShowError); 
    就可以访问SERVICE了
    但是这里 这个方法是没有返回值的哦
    SERVICE的返回结果 通过CE_ShowResult的参数返回来.