当前位置: 代码迷 >> JavaScript >> 在Bootstrap表中添加向上和向下功能
  详细解决方案

在Bootstrap表中添加向上和向下功能

热度:32   发布时间:2023-06-13 12:15:09.0

我正在构建一个函数,允许我向上或向下向表添加行。 我现在正在使用“向上”功能,我认为它与向下功能非常相似。 我正在使用JavaScript / Jquery,并且仅在他们保存该行之后才会显示向上箭头。 这是我的Save函数和正在进行的up函数无法正常工作的代码。

function Save() { 
    var par = $(this).parent().parent(); //tr 
    var tdDate = par.children("td:nth-child(1)"); 
    var tdTime = par.children("td:nth-child(2)"); 
    var tdTreatmentNum = par.children("td:nth-child(3)"); 
    var tdCellNum = par.children("td:nth-child(4)");                             
    var tdWasteContNum = par.children("td:nth-child(5)");
    var tdButtons = par.children("td:nth-child(6)");

    tdDate.html(tdDate.children("input[type=date]").val());
    tdTime.html(tdTime.children("input[type=time]").val());
    tdTreatmentNum.html(tdTreatmentNum.children('select').val());
    tdCellNum.html(tdCellNum.children('select').val());
    tdWasteContNum.html(tdWasteContNum.children('select').val());
    tdButtons.html("<img src='trash.png' class='btnDelete'/>
    <img src='pencil.png' class='btnEdit'/><img src='up.png'class='btnUp'/>"); 

    $(".btnEdit").bind("click", Edit); 
    $(".btnDelete").bind("click", Delete); 
    $(".btnUp").bind("click", Up);

};

function Up() {
    var row = $(this).parent().parent(); //tr
    if ($(this).hasClass('up'))
        row.prev().before(row);
    else
        row.next().after(row);
});

我对JQuery不熟悉。 我的添加行不再起作用(尽管我知道它可以正常运行)。 这是用于添加,保存和启动功能(包括html表)的更完整的代码。 有任何想法吗?

更新-

这样做很有帮助,但似乎只是将项目移到列表的底部,而不是向上或向下移动。

您提供的JSFiddle中存在一些问题。 我已经更新了您的代码,并在问题本身中提供了一个工作示例。

由于无法显示您正在使用的实际图像,因此我使用了引导程序库的字形图标来显示类似图像。 您可以在开发环境中再次用<img>替换<span>标记,并且一切正常。

当您要求DeleteSave此版本的更新工作正常。 希望这可以帮助您相处。