gpt4 book ai didi

javascript - jQuery 使用单元格数据改造单元格

转载 作者:行者123 更新时间:2023-11-30 18:04:41 24 4
gpt4 key购买 nike

我正在使用 jquery 以及 CSVtoTable(此处的插件:https://code.google.com/p/jquerycsvtotable/)插件将大型 CSV 文件转换为我可以操作的表格。我需要附加与每一行相关的链接。

我需要转换其中一行中的文本以添加指向 pdf 的链接。问题是我似乎无法修改字符串。我正在使用此处找到的数据:http://jsfiddle.net/bstrunk/vaCuY/297/

我的系统生成的文件名不容易编辑,所以我只能使用这些格式:

  • 423-1.pdf

所以我需要从格式如下的表中转换两个字符串:

  • 2013/4/23

  • 1

删除年份和斜杠,然后添加一个“-”,然后添加额外的数字。我能够获取表数据,但似乎无法使用 .replace 或 .substr 操作变量

$(document).ready(function () {
$("tr td:nth-child(5)").each(function () {
var $docket = $('td=eq(5)');
var $td = $(this);
var $dataDate = $td.substr(0, $td.lastIndexOf("/"));
var $newDataDate = $dataDate.replace("/", "");
$td.html('<a html="./docs/' + $newDataDate.text() + '-' + $docket.text() + '.pdf">' + $td.text() + '</a>');
});
});

(编辑):样本表数据:

<tr><td>13CI401111</td><td>22</td><td>Name1</td><td>Name2</td><td>4/23/2013</td><td>1</td></tr>
<tr><td>13CI401112</td><td>22</td><td>Name1</td><td>Name2</td><td>4/24/2013</td><td>2</td></tr>

最佳答案

首先正确设置表id:

<table id="CSVTable">

然后使用右选择器选择每行中的第 5 个单元格:

$("#CSVTable tr td:nth-child(5)") //note that we need to tell Jquery to look for the cells inside `CSVTable` otherwise it will search the whole document

每个变量的开头不需要美元符号,没有任何意义,可以去掉。
这行不通:

var $docket = $('td=eq(5)');

它告诉 jquery 寻找第 6 个单元格,但是在哪里呢?你应该像这样指定父级:

$("#CSVTable tr td:nth-child(6)");

但是我们只需要在 each 函数中已经选择的单元格的下一个单元格,所以更好的方法是使用 next() 方法来选择下一个直接 td:

$(this).next('td');

完整代码:

$(document).ready(function () {
$("#CSVTable tr td:nth-child(5)").each(function () {
var td = $(this),
docket = td.next('td').text(),
dataDate = td.text(),
newDate = dataDate.substr(0, dataDate.lastIndexOf('/')).replace("/", '');

td.html('<a href="/docs/' + newDate + '-' + docket + '.pdf">' + dataDate + '</a>');
});
});

Demo

关于javascript - jQuery 使用单元格数据改造单元格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16072652/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com