【问题标题】:How to programmatically clear search textfield inside a Jquery Datatable如何以编程方式清除 Jquery Datatable 中的搜索文本字段
【发布时间】:2022-01-07 08:01:40
【问题描述】:

在我的页面中有多个 jquery 数据表。我想以编程方式重置其中一个 Jquery 数据表内的搜索文本字段。

  var dtTaskEmployee= $('#tblEmployee').DataTable({});
  $('#modalEmployeeDetails').on('hidden.bs.modal', function () {
     $('input[type=search]').val('');
     dtTaskEmployee.search('').draw();
  })

但是这个清除了所有数据表中的所有搜索字段。我想清除 dtTaskEmployee 中的搜索输入字段。谁能帮忙解决这个问题

【问题讨论】:

  • 假设 dtTaskEmployee 是一个 jQuery 对象:dtTaskEmployee.find('input[type=search]').val(''); ?
  • $('input[type=search]').val('') -> $('#tblEmployee input[type=search]').val('')
  • @connexo dtTaskEmployee 是 jquery 数据表对象。我已经更新了问题。以上解决方案不起作用
  • @freedomn-m 关闭,但它是$('#tblEmployee_filter input[type=search]').val('');
  • @user12031119 #tblEmployee_filter 不会是inside #tblEmployee? (实际上没有检查,所以如果#tblEmployee 是table 可能不会)并且OP 声明“dtTaskEmployee 内的清除字段”其中dtTaskEmployee 是#tblEmployee 的数据表?所以两者都可以,但是添加“_filter”会假设数据表在内部是如何工作的,并且可能会随着新版本的发布而中断。

标签: javascript html jquery bootstrap-4 datatables


【解决方案1】:

$('input[type=search]').val(''); 将清除所有搜索字段,因此您希望仅将其限制为 #tblEmployee

var dtTaskEmployee= $('#tblEmployee').DataTable({});
$('#modalEmployeeDetails').on('hidden.bs.modal', function () {
   $('#tblEmployee_filter input[type=search]').val('');
   dtTaskEmployee.search('').draw();
})

【讨论】:

  • 非常感谢!!..它工作得很好
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-01-20
  • 1970-01-01
  • 2012-05-23
  • 1970-01-01
  • 2014-07-26
相关资源
最近更新 更多