<a id="go" href=http://www.baidu.com target="_blank">帅哥</a> 
<script>
var abc=document.getElementById("go");
for(i=0;i<abc.length;i++)
{
abc[i].href="http://www.g.cn/url.html?url="+abc[i].href;
}
</script>我希望页面中所有超链接ID为go的连接点击打开的时候url前面加上指定字符。上面的代码无效,大家帮我看下错在哪里了?

解决方案 »

  1.   

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>无标题文档</title>
    <style></style>
    </head><body>
    <a id="go" href=http://www.baidu.com target="_blank">帅哥</a> 
    <a id="go" href=http://www.baidu.com target="_blank">帅哥</a> 
    <a id="go" href=http://www.baidu.com target="_blank">帅哥</a> 
    <script>
    var abc=document.getElementsByTagName("a");
    for(i=0;i<abc.length;i++)
    {
    if(abc[i].id == 'go'){
         abc[i].href="http://www.g.cn/url.html?url="+abc[i].href;
    }
    }
    </script></body>
    </html>
    用getElementsByTagName拿getElementById值返回一个对象,他没有.length属性~·因为他不是数组~·
      

  2.   

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>无标题文档</title>
    <style></style>
    </head><body>
    <a id="go" href=http://www.baidu.com target="_blank">帅哥</a> 
    <script>
    var abc=document.getElementById("go");
    abc.href="http://www.g.cn/url.html?url="+abc.href;
    </script></body>
    </html>
    如果按你这个写的话~·就不用加外面的那个循环了~·