对重新排序的数据表使用find()进行Jquery

对重新排序的数据表使用find()进行Jquery,jquery,input,split,paste,next,Jquery,Input,Split,Paste,Next,我使用的是Bootstrap4数据表,我想在表单的输入值中复制并粘贴整个Excel列。到目前为止,只要表没有排序,我就有一个工作代码。但是,当我按不同的标题(默认标题除外)对表进行排序时,代码会在使用Next()函数时尝试复制“old”行号中的数据。我找到了一个解决办法,但它非常笨拙,而且不耐用。有什么改进的建议吗?如果没有多个Next(),第2行上的输入字段将被连续覆盖 $("input[data-scenario=attr]").on('paste', function(

我使用的是Bootstrap4数据表,我想在表单的输入值中复制并粘贴整个Excel列。到目前为止,只要表没有排序,我就有一个工作代码。但是,当我按不同的标题(默认标题除外)对表进行排序时,代码会在使用Next()函数时尝试复制“old”行号中的数据。我找到了一个解决办法,但它非常笨拙,而且不耐用。有什么改进的建议吗?如果没有多个Next(),第2行上的输入字段将被连续覆盖

$("input[data-scenario=attr]").on('paste', function(){
    var $start = $(this);
    $start.val().replace(/[^0-9 \,]/, '');
    
    setTimeout(function() {
        var 
            row = $start.attr("data-row"),
            col = $start.attr("data-column"),
            groups = $start.val().split(/\s+/);
            
        if (groups) {
            var i = 0;
            while (i < groups.length) {
            
               if(i == 0) {
                    $("input[data-rowcol="+row+"_"+col+"]").val(groups[i].replace(/\,/g, '.'));
                } else if (i == 1) {
                    $start.parent().parent().next().find("td input[data-column="+col+"]").val(groups[i].replace(/\,/g, '.'));
                } else if (i == 2) {
                    $start.parent().parent().next().next().find("td input[data-column="+col+"]").val(groups[i].replace(/\,/g, '.'));
                } else if (i == 3) {
                    $start.parent().parent().next().next().next().find("td input[data-column="+col+"]").val(groups[i].replace(/\,/g, '.'));
                } else if (i == 4) {
                    $start.parent().parent().next().next().next().next().find("td input[data-column="+col+"]").val(groups[i].replace(/\,/g, '.'));
                } else if (i == 5) {
                    $start.parent().parent().next().next().next().next().next().find("td input[data-column="+col+"]").val(groups[i].replace(/\,/g, '.'));
                } else if (i == 6) {
                    $start.parent().parent().next().next().next().next().next().next().find("td input[data-column="+col+"]").val(groups[i].replace(/\,/g, '.'));
                } else if (i == 7) {
                    $start.parent().parent().next().next().next().next().next().next().next().find("td input[data-column="+col+"]").val(groups[i].replace(/\,/g, '.'));
                } else if (i == 8) {
                    $start.parent().parent().next().next().next().next().next().next().next().next().find("td input[data-column="+col+"]").val(groups[i].replace(/\,/g, '.'));
                } else if (i == 9) {
                    $start.parent().parent().next().next().next().next().next().next().next().next().next().find("td input[data-column="+col+"]").val(groups[i].replace(/\,/g, '.'));
                } else if (i == 10) {
                    $start.parent().parent().next().next().next().next().next().next().next().next().next().next().find("td input[data-column="+col+"]").val(groups[i].replace(/\,/g, '.'));
                }
                
                i++;
            }
        }
    }, 0);
});

$(“输入[data scenario=attr]”)。在('paste',function()上{
var$start=$(这是);
$start.val().replace(/[^0-9\,]/,'');
setTimeout(函数(){
变量
行=$start.attr(“数据行”),
col=$start.attr(“数据列”),
groups=$start.val().split(/\s+/);
if(组){
var i=0;
而(i
您还需要显示相关的HTML