function Myupdate(btn)
    {
         var btnId=btn.id;  //获取button的ID
         var Ubtn=document.getElementById(btnId); //获取button对象
         var tablerow=Ubtn.parentNode.parentNode;  //取得button所在的行对象
         var fChild=tablerow.firstChild;  //找到对应行的TD对象
         oldValue=fChild.innerText;
         var ndiv=document.createElement("div");
         fChild.innerText="";
         fChild.appendChild(ndiv);
         var inputTxt = document.createElement("input");
         inputTxt.value=oldValue;
         ndiv.appendChild(inputTxt);
    }   
这是代码

解决方案 »

  1.   

    IE6没发现问题 <table id="table1" style="width: 500px">
                    <tr class="QueryList"><td align="left" style="padding: 5px 3px 2px 5px" class="TdRight">111</td>
                    <td> <input type="image" src="CalenderList_update.gif" title="更新"  id="update1" onclick="javascript:Myupdate(this)"></td></tr>
                   
                                             <tr class="QueryList"><td align="left" style="padding: 5px 3px 2px 5px" class="TdRight">222</td>
                    <td><input type="image" src="CalenderList_update.gif" title="更新"  id="update2" onclick="javascript:Myupdate(this)"></td></tr>
                   
                                             <tr class="QueryList"><td align="left" style="padding: 5px 3px 2px 5px" class="TdRight">333</td>
                    <td> <input type="image" src="CalenderList_update.gif" title="更新"  id="update3" onclick="javascript:Myupdate(this)"></td></tr>
                                             <tr class="QueryList"><td align="left" style="padding: 5px 3px 2px 5px" class="TdRight">444</td>
                    <td><input type="image" src="CalenderList_update.gif" title="更新"  id="update4" onclick="javascript:Myupdate(this)"></td></tr>
                    </table>
                    
    <script language="javascript">
    <!--
        function Myupdate(btn)
        {
             var btnId=btn.id;  //获取button的ID
             var Ubtn=document.getElementById(btnId); //获取button对象
             var tablerow=Ubtn.parentNode.parentNode;  //取得button所在的行对象
             var fChild=tablerow.firstChild;  //找到对应行的TD对象
             oldValue=fChild.innerText;
             var ndiv=document.createElement("div");
             fChild.innerText="";
             fChild.appendChild(ndiv);
             var inputTxt = document.createElement("input");
             inputTxt.value=oldValue;
             ndiv.appendChild(inputTxt);
        }   //-->
    </script>
      

  2.   

    啊???IE7和IE8都有问题!!IE6我没测试!!晕!!不知道在IE7和IE8如何解决?
      

  3.   

    try:
    var fChild=tablerow.firstChild;
    ===>
    var fChild=tablerow.getElementsByTagName("tr")[0]oldValue=fChild.innerText
    ===>
    oldValue=fChild.innerHTML
      

  4.   

    sorry: 
    var fChild=tablerow.firstChild; 
    ===> 
    var fChild=tablerow.getElementsByTagName("td")[0] 
      

  5.   

    感谢楼上回答,,但问题没有解决!!主要是添加<input>时候,,就显示一下,,然后马上消失
      

  6.   

    找到问题所在了!!这个table不能在<form>标签里!!但是如果放在form标签里应该怎么做!
      

  7.   

    这个table不能在 <form>标签里!! 不明白
    try:
    <form>放到table里(table和TR之间)
    or:
    table===>DIV