不知道你实现的是什么效果?想说的是:为什么不用td的onclick事件呢?

解决方案 »

  1.   

    我只知道JS可以用childNodes来遍历一个元素内的所有子元素,然后判断出tagName为input并且type为radio的时候就操作此元素,没听过用PHP可以实现这些功能。
      

  2.   

    上面的数组可以通过二维循环显示成一个表。然后通过单击某行可以实现该行颜色的改变(已实现),并且希望同时该行的radio项设置为被选中,单击button按钮可以实现该行数据的显示。
      

  3.   


    <style>
    .hide{display:none;}
    </style><script>
    dodo.selected=null;
    function dodo(tr){
        var rs=tr.getElementsByTagName("input");
        if(rs.length==0)return;
        rs[0].checked=true;
        rs[0].className='';
        if(rs[0]!=dodo.selected&&dodo.selected!=null)dodo.selected.className="hide";
        dodo.selected=rs[0];
    }
    function show(){
        var rows=document.getElementById("tab").rows;
        for(var i=0;i<rows.length;i++){
            var rs=rows[i].getElementsByTagName("input");
            if(rs.length==0)continue;
            if(rs[0].checked){
                alert(rows[i].innerHTML);//不知道你要显示这一行的什么信息
                break;
            }
        }
    }
    </script><table id="tab">
    <tr onclick="dodo(this)"><td><input type=radio name=choose class="hide" ></td><td>1111</td><tr>
    <tr onclick="dodo(this)"><td><input type=radio name=choose class="hide" ></td><td>2222</td><tr>
    <tr onclick="dodo(this)"><td><input type=radio name=choose class="hide" ></td><td>3333</td><tr>
    </table>
    <input type="button" value="显示选中行信息" onclick="show()" />
      

  4.   

    <html > <head > 
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312" > 
    <title > </title > 
    <style type="text/css">
    .hidden
    {
        display:none;
    }
    </style>
    </head > 
    <body onload="init()"> 
    <div>
     <table id="tbl" border="1">
        <tr>
            <td class="hidden"><input type="radio" name="choose" /> </td>
            <td>11</td>
            <td>12</td>
            <td>13</td>
            <td>14</td>
        </tr>
         <tr>
            <td class="hidden"><input type="radio" name="choose" /></td>
            <td>21</td>
            <td>22</td>
            <td>23</td>
            <td>24</td>
        </tr>
     </table>
    </div>
    <input type="button" value="得到选择行信息" onclick="getCheckLine()" />
    </body > 
    </html >
    <script language="javascript" type="text/javascript" > 
    function init()
    {
        var oTbl = document.getElementById("tbl");
        for(var i=0;i<oTbl.rows.length;i++)
        {
            oTbl.rows[i].onclick=new Function("this.cells[0].childNodes[0].checked=true;");
            
        }
    }function getCheckLine()
    {
        var rd = document.getElementsByName("choose");
        var flag = false;
        for(var i=0;i<rd.length;i++)
        {
            if(rd[i].checked)
            {
                flag = true;
                alert("你选择了第"+(i+1)+"行\n信息:\n"+rd[i].parentNode.parentNode.outerHTML);
            }
        }
        if(!flag) alert("你没有选择任何行!");
        
    }
    </script >