YAN_HUAXIANGMO 2017-07-14 15:48 采纳率: 100%
浏览 1528
已采纳

一键重置表格所有样式和内容

遇到了这样的问题,弄了一个表格,内部格式大致如下

 <form>
<table id=“tB”>
    <tr id=“tR”>
            <td>
                    <input id=“no”class=“no”>
            </td>
            <td id="com1">*****
            </td>
    </tr>

    <tr>
            <td>
                    <input id=“name”class=“name”>
            </td>
            <td id="com2">*****
            </td>
    </tr>
</table>
<input type="reset" value="重置">
</form>

,问题就是,我的input通过class属性设置了css样式,现在要一键重置,把input的样式清除了,也把第二个《td》的“*****”这个内容也清除,怎么做?
我能想到的是获取input的标签的className = “”,这样能清除input的样式,但是要把td的内容给清空,就必须用innerHtml,假如我的表单还有很多行,我就想一次性获取行中的第二个td把*****清空,不单独一个一个获取id清除,怎么做?

 function reSet() {
                        ////这里我不想这样,想一次性获取比如循环获取document.getElementById("com"+x).inerHTML=“”;这样,但是失败了,getElementById方法不能识别var x
            document.getElementById("com1").innerHTML = "";
            document.getElementById("com2").innerHTML = "";

            var a = document.getElementsByTagName("input");//这里是清空input样式
            for (var x = 0; x < a.length; x++) {
                document.getElementsByTagName("input")[x].className = "";
            }
        }
  • 写回答

3条回答 默认 最新

  • hongjinwu 2017-07-17 03:35
    关注

    function reSet() {
    var trEle = document.getElementById('tB').children[0].children;
    var ipts,
    tdEles;
    for (var i = 0; i< trEle.length; i++) {
    ipts = trEle[i].children[0].children; // 获取页面所有文本框
    tdEles = trEle[i].children[1];
    ipts[0].className = ''; // 清除类名
    tdEles.innerHTML = ''; // 清空内容
    }
    }

    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 软件定义网络mininet和onos控制器问题
  • ¥15 微信小程序 用oss下载 aliyun-oss-sdk-6.18.0.min client报错
  • ¥15 ArcGIS批量裁剪
  • ¥15 labview程序设计
  • ¥15 为什么在配置Linux系统的时候执行脚本总是出现E: Failed to fetch http:L/cn.archive.ubuntu.com
  • ¥15 Cloudreve保存用户组存储空间大小时报错
  • ¥15 伪标签为什么不能作为弱监督语义分割的结果?
  • ¥15 编一个判断一个区间范围内的数字的个位数的立方和是否等于其本身的程序在输入第1组数据后卡住了(语言-c语言)
  • ¥15 Mac版Fiddler Everywhere4.0.1提示强制更新
  • ¥15 android 集成sentry上报时报错。