qq_25502173 2015-01-21 12:22 采纳率: 0%
浏览 3551

JS如何显示和隐藏一个表格中的所有表单输入框。

图片说明现在是想要把表格的补货一栏去掉,在表格底部加一个按钮,点击以后 已补货的数字变成输入框。然后再次点击以后提交。

我想要的是一个按钮,控制所有“已补货”列,所有数字都变成输入框。
控制表格里面加了class是content的数据,
点击以后

 <span class=content>0</span>

变输入框,其他列数据不要变。

 <tr>
      <td> </td>
    <td><span class="content">0</span></td></tr>

    小白问题,跪求大神,
  • 写回答

1条回答 默认 最新

  • Go 旅城通票 2015-01-21 13:40
    关注

    发个jquery版本的给你

     <script src="http://code.jquery.com/jquery-1.4.1.min.js"></script>
    <form>
    <table id="tb" border="1">
    <tr><td>列1</td><td>已补货</td><td>补货</td><td>列其他</td></tr>
    <tr><td>列1</td><td><span class="content">0</span></td><td><input type="text"/></td><td>列其他</td></tr>
    <tr><td>列1</td><td><span class="content">0</span></td><td><input type="text"/></td><td>列其他</td></tr>
    <tr><td>列1</td><td><span class="content">0</span></td><td><input type="text"/></td><td>列其他</td></tr>
    </table>
    <input type="submit" value="已补货" onclick="return renderInput(this)"/></form>
    <script>
    function renderInput(btn){
    var span=$('#tb span.content');
    if(span.length>0)//没有将已补货列生成输入框
    span.each(function(){$(this).replaceWith('<input type="text" name="num" value="'+this.innerHTML+'"/>')});
    return span.length==0;//没有生成input则返回false阻止表单提交
    }
    $(function () {
      var tb=$('#tb'),delIndex=-1;
       tb.find('tr:first td').each(function(index){if($(this).text()=='补货'){delIndex=index;return false;}})//找到补货那列
       tb.find('tr td:nth-child('+(delIndex+1)+')').remove();//删除补货那列
    });
    </script>
    
    评论

报告相同问题?

悬赏问题

  • ¥50 comsol稳态求解器 找不到解,奇异矩阵有1个空方程返回的解不收敛。没有返回所有参数步长;pid控制
  • ¥15 怎么让wx群机器人发送音乐
  • ¥15 fesafe材料库问题
  • ¥35 beats蓝牙耳机怎么查看日志
  • ¥15 Fluent齿轮搅油
  • ¥15 八爪鱼爬数据为什么自己停了
  • ¥15 交替优化波束形成和ris反射角使保密速率最大化
  • ¥15 树莓派与pix飞控通信
  • ¥15 自动转发微信群信息到另外一个微信群
  • ¥15 outlook无法配置成功