如何编辑此表响应脚本?

时间:2015-12-04 14:32:53

标签: javascript html

我正在使用此脚本自动将表格调整为智能手机视图。 它完美无缺!但在某些页面中,我将拥有多个表,并且该脚本似乎只适用于第一个表。 查看我的示例,调整浏览器窗口的大小:http://elenatest.altervista.org/index.html

这是放在正文中的JS代码:

<script type="text/javascript">
            var headertext = [],

            headers = document.querySelectorAll("#MyTable th"),
            tablerows = document.querySelectorAll("#MyTable th"),
            tablebody = document.querySelector("#MyTable tbody");

            for(var i = 0; i < headers.length; i++) {
                var current = headers[i];

                headertext.push(current.textContent.replace(/\r?\n|\r/,""));

            } 

            for (var i = 0, row; row = tablebody.rows[i]; i++) {
                for (var j = 0, col; col = row.cells[j]; j++) {
                    col.setAttribute("data-th", headertext[j]);
                } 
            }
</script>

有没有办法让这个脚本为页面中的所有表运行?

修改

我用CLASS更改了ID。这是JS代码:

<script type="text/javascript">
            var headertext = [],

            headers = document.querySelectorAll(".MyTable th"),
            tablerows = document.querySelectorAll(".MyTable th"),
            tablebody = document.querySelector(".MyTable tbody");

            for(var i = 0; i < headers.length; i++) {
                var current = headers[i];

                headertext.push(current.textContent.replace(/\r?\n|\r/,""));

            } 

            for (var i = 0, row; row = tablebody.rows[i]; i++) {
                for (var j = 0, col; col = row.cells[j]; j++) {
                    col.setAttribute("data-th", headertext[j]);
                } 
            }
        </script>

显然在我的HTML中:

<table class="MyTable">
 <!--etc etc-->
</table>

2 个答案:

答案 0 :(得分:1)

选择&#34;表&#34;首先,然后在每个上应用你的功能:

created_obj = Something.objects.get_or_create(name='ABC',Address="XYZ")

答案 1 :(得分:0)

当您使用身份for(var i = 0; i < tablebody.length; i++) { 时,您认为您的网页上只有一个表格。

首先,您应该将此更改为class,以使语义更正确。 然后,你需要像使用标题一样迭代tablebody。

LineChart