很头疼的一个关于javascript的问题.  我从数据库里面提取数据列表放到一个jsp页面的表格上,表格如下:
<table>
这里开始循环
<tr id="selecttr<%=index%>" onClick="changecolor(<%=index%>)"><td>这里是数据</td></tr>
这里结束循环
需要说明的是这里的index是从数据提取的一个数字象:0,1,2......动态的.实现的功能是当我点每一行的时候也就是<tr>要调用一个函数:changecolor(),这个函数的功能就是把这一行底色加重
函数如下:
<script language="javascript">
function changecolor(num)
{
'document.all.selecttr'+num+'.bgColor='#FF0000';
//具体不清楚这里如何写
}
</script>可是我测试了好多遍就是不行.不能实现我想象的效果.请帮忙.哪里的原因呢?

解决方案 »

  1.   

    修改一下:
    <tr id="selecttr<%=index%>" onClick="changecolor('<%=index%>')"><td>(里面加了一个单引号哦)<script language="javascript">
    function changecolor(num)
    {
        var obj = document.getElementById('selecttr'+num);
        obj.bgColor='#FF0000';
    }
    </script>
      

  2.   

    本来不头疼的问题被你自已弄痛的.为什么要定义这么多的ID呢.请看下面:
    <tr><td onclick="this.bgColor='#0033FF'">数据库里的内容</td></tr>
    一句解决.也不用函数了.