<a href="javscript:test()">test</a>还是获取超链接的问题。如果连接是通过脚本的方式提交的。怎么能够获取到连接.

解决方案 »

  1.   

    <a href="javscript:test()">标题</a>
    <srcipt language=javascript>
    function test()
    {
        location.href="webform1.aspx";
    }
    </script>想获取标题上的连接地址,正常情况都可以获取到,但是遇到用脚本方式提交的时候获取不到了
    怎么能获取到test中的那个连接地址.
      

  2.   

    连接不是由我写的。是想抽取别人网页的连接.
       怎么能够抽取到用脚本提交的连接地址.<a href="javscript:test('1')">标题</a>
    <srcipt language=javascript>
    function test(id)
    {
        location.href="webform1.aspx?id="+id;
    }
    </script>
    连接可能有参数。
      

  3.   

    最起码,先找到test()
    得到test那段js
    找到 return 的值
    看哪里赋值了
    (有表达式的话还要……)
    然后……
    楼主就可以自己写解释器了
      

  4.   

    antoniusguo(anton)
    最起码,先找到test()
    得到test那段js
    找到 return 的值
    看哪里赋值了
    (有表达式的话还要……)
    然后……
    楼主就可以自己写解释器了   可以说具体点吗?还要……  怎么样,然后……怎么样?
      

  5.   

    在第二页应该可以获的到
    第了第二页已经编译成HTML代码
      

  6.   

    function test()
        {
            return "webform1.aspx";
        }
        var obj = document.getElementById('a');
        obj.href = test();
    <a id="a">test</a>
      

  7.   

    这种情况我觉得是没有简便的方法,只能一行行分析,遇到类似
    function test()
    {
        location.href="webform1.aspx";
    }
    先将函数名、链接地址压入数组暂存,后面遇到<a href="xxxxx">时再作分析个人观点...
      

  8.   

    <srcipt language=javascript>
    function test(){
    document.form.action = "webform1.aspx"
    document.form.submit();
    }
    </script>
    看这样可以不啊!!!
      

  9.   

    第1次正则(?<=<a href="javscript:).*?(?=">.*?</a>)
    分析出javscript调用的函数名和参数第2次正则(.*?)\('(.*?)'
    分析第1次正则得到的值
    函数名(组1里)和参数(组2里)第3次使用正则
    function.*?test.*?\((.*?)\).*?{.*?location.href="(.*?)"   
    test换成第2次正则组1的值
    分析的结果
    组2里就能得到webform1.aspx?id=  把webform1.aspx?id=连上第2次正则组2的值就可以了说了这么多 也不知道你明白了没