首页 > 解决方案 > 如何在不获取 table.deleteRow 的情况下用 $ 替换 document.QuerySelector 不是函数

问题描述

当我使用

const table = document.querySelector('table#home');

那么下面的代码就可以了

const streetRowCount = $('table#home input[id^=street-]').length;
const offsetForZeroIndex = 1;
streetRowCount > 2 &&
  (table.deleteRow(skipFields + streetRowCount - offsetForZeroIndex))
}

但是,当我document.querySelector用 jquerys替换时$,即

const table = $('table#home');

我收到一个错误

table.delete_row is not a function`

标签: javascriptjquery

解决方案


table现在是一个 jQuery 对象,它们没有delete_row()方法(甚至没有deleteRow()方法,因为这是正确的名称)

相反,您需要给find()定索引处的表中的行remove(),如下所示:

const $table = $('table#home');
$table.find('tr').eq(skipFields + streetRowCount - offsetForZeroIndex).remove();

推荐阅读