2014-11-25 57 views
0

的foreach行我已经删除按钮,在点击这个按钮,我有以下功能:按钮点击从数据表中删除,也从我的表阵列

function deleteBussDay(jQtable) 
{ 
    var row = jQtable.parentNode.parentNode; 
    $(jQtable).closest('tr').remove(); 
    openHour.splice(row.rowIndex,1); 
    // openHour is my array ,which i also want to delete from 
} 

与此代码它的问题单击删除时从表中删除相关行,但会删除数组中的错误行。 (所选行上面的一个) 我该如何解决它?!

回答

1

如果像你说的,正确的行被删除,那么你作出正确的遍历表行的位置:

$(jQtable).closest('tr').remove(); 

意义,让我们的表行的rowIndex属性,我们可以使用相同的jQuery对象.prop()

function deleteBussDay(jQtable) { 
    var $row = $(jQtable).closest('tr'), rowInd = $row.prop('rowIndex'); 
    $row.remove(); 
    openHour.splice(rowInd ,1); 
} 
+0

它的工作原理。谢谢! – 2014-11-25 09:18:28

+0

@MaisamMansour很高兴有帮助。 – George 2014-11-25 09:19:45

0

'rowIndex'为每个表计数。 当您对表进行排序时,'rowIndex'发生了变化。 作为替代方法,您可以使用一些“数据”属性作为标记。

function deleteBussDay(jQtable) 
{ 
    var row = $(jQtable).closest('tr'); 
    var id = row.data('rowIndex'); 
    row.remove(); 
    openHour.splice(id, 1); 
    // openHour is my array ,which i also want to delete from 
} 

function deleteBussDay(jQtable) 
{ 
    var row = jQtable.parentNode.parentNode; 
    var id = row.rowIndex; 
    $(row).remove(); 
    openHour.splice(id, 1); 
    // openHour is my array ,which i also want to delete from 
} 
相关问题