Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/438.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/79.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 将内容拉入td数据标签属性_Javascript_Html_Css_Html Table_Responsive - Fatal编程技术网

Javascript 将内容拉入td数据标签属性

Javascript 将内容拉入td数据标签属性,javascript,html,css,html-table,responsive,Javascript,Html,Css,Html Table,Responsive,我使用的是一种响应性表格样式,它可以折叠成更小的屏幕大小,并在每个单元格前显示表格标题 正文{ 字体系列:“开放式Sans”,无衬线; 线高:1.25; } 桌子{ 边框:1px实心#ccc; 边界塌陷:塌陷; 保证金:0; 填充:0; 宽度:100%; 表布局:固定; } 表格标题{ 字号:1.5em; 边缘:.5em 0.75em; } 表tr{ 背景:#f8f8; 边框:1px实心#ddd; 填充:.35em; } 表th, 表td{ 填充:625em; 文本对齐:居中; } 表th{

我使用的是一种响应性表格样式,它可以折叠成更小的屏幕大小,并在每个单元格前显示表格标题

正文{
字体系列:“开放式Sans”,无衬线;
线高:1.25;
}
桌子{
边框:1px实心#ccc;
边界塌陷:塌陷;
保证金:0;
填充:0;
宽度:100%;
表布局:固定;
}
表格标题{
字号:1.5em;
边缘:.5em 0.75em;
}
表tr{
背景:#f8f8;
边框:1px实心#ddd;
填充:.35em;
}
表th,
表td{
填充:625em;
文本对齐:居中;
}
表th{
字体大小:.85em;
字母间距:.1米;
文本转换:大写;
}
@媒体屏幕和屏幕(最大宽度:600px){
桌子{
边界:0;
}
表格标题{
字体大小:1.3em;
}
餐桌{
边界:无;
剪辑:rect(0);
高度:1px;
保证金:-1px;
溢出:隐藏;
填充:0;
位置:绝对位置;
宽度:1px;
颜色:红色;
背景色:#000;
}
表tr{
边框底部:3px实心#ddd;
显示:块;
边缘底部:.625em;
}
表td{
边框底部:1px实心#ddd;
显示:块;
字体大小:.8em;
文本对齐:右对齐;
}
表td:之前{
/*
*aria标签没有任何优势,它不会在表中读取
内容:attr(aria标签);
*/
内容:attr(数据标签);
浮动:左;
字体大小:粗体;
文本转换:大写;
}
表td:最后一个孩子{
边界底部:0;
}
表td:第一个孩子{
颜色:白色;
背景:#000;
}
}

报表摘要
账户
预计到达日期
数量
时期
签证-3412
04/01/2016
$1,190
03/01/2016 - 03/31/2016
签证-6076
03/01/2016
$2,443
02/01/2016 - 02/29/2016
美国运通公司
03/01/2016
$1,181
02/01/2016 - 02/29/2016

是否希望表格从此处开始:

| Account | Estimated arrival date | Amount | Period |
| ------- | ---------------------- | ------ | ------ |
|    1234 |             03/15/2001 |  $1.00 |    3rd |
|    1235 |             04/21/2002 | $12.00 |    4th |
|    4594 |             11/11/2011 | $45.00 |    2nd |
对这个

-----------
Account: 1234
Estimated Arrival Date: 03/15/2001
Amount: $1.00
Period: 3rd
-----------
Account: 1235
Estimated Arrival Date: 04/21/2002
Amount: $12.00
Period: 4th
-----------
Account: 4594
Estimated Arrival Date: 11/11/2011
Amount: $45.00
Period: 2nd
-----------
更新 请尝试以下代码:

函数切换(){
var table=document.querySelector('.my table');
table.classList.toggle('show-thin');
}
.table{
边界塌陷:塌陷;
显示:内联表;
}
.tr{
显示:表格行;
}
.th,.td{
显示:表格单元格;
边框:1px实心#555;
填充:3px6px;
}
.th{
背景色:#ddd;
字体大小:粗体;
文本对齐:居中;
}
.td{
文本对齐:右对齐;
}
.my-table.show-thin{
显示:块;
}
.show thin.tr{
边框底部:1px纯黑;
显示:块;
边缘底部:2px;
垫底:2件;
}
.秀瘦{
边界:无;
显示:块;
填充:0;
文本对齐:左对齐;
}
td:之前{
内容:attr(标题):;
显示:内联块;
字体大小:粗体;
右侧填充:5px;
}
.显示瘦.隐藏瘦{
显示:无;
}
切换

账户 预计到达日期 数量 时期 1234 03/15/2001 $1.00 第三 1235 04/21/2002 $12.00 第四 4594 11/11/2011 $45.50 第二
我使用jQuery的解决方案似乎有效(可选:我跳过任何带有colspan的表单元格):

$('.myDiv table')。每个(函数(索引、值){
var headerCount=$(this).find('thead th').length;

对于(i=0;i这个小代码jQuery,将attr“data label”TH复制到TD


我修改了我的代码,加入了一些应该适合您需要的代码。我的主要问题是我想将这种响应风格应用于一些相当大的数据表,我不想进入HTML并为每个单元格设置数据标签或标题属性。所以我希望使用Javascript根据所有应用程序的内容设置该属性能干的。
    $('.myDiv table').each(function (index, value) {
    var headerCount = $(this).find('thead th').length;

    for (i = 0; i <= headerCount; i++) {
        var headerLabel = $(this).find('thead th:nth-child(' + i + ')').text();

        $(this).find('tr td:not([colspan]):nth-child(' + i + ')').replaceWith(
            function () {
                return $('<td data-label="' + headerLabel + '">').append($(this).contents());
            }
        );
    }

});
$('table th').each(function(i,elem) {
  var num = i + 1;
  $('table td:nth-child(' + num + ')').attr('data-label', $(elem).text());
});