亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

DataTables:使用 OR 運算符在多列中搜索

DataTables:使用 OR 運算符在多列中搜索

小唯快跑啊 2022-10-27 15:41:22
我嘗試使用相同的值在多列中搜索,默認情況下這些值存在于表中,如果我使用此代碼在一列中搜索,它可以正常工作而沒有任何問題:table.column(0).search('blabla\\s*$', true, false).draw()如果我嘗試使用其他值搜索第二列,則可以正常工作:table.column(1).search('bla\\s*$', true, false).draw()因此,我嘗試使用此代碼搜索兩列(我在 StackOverflow 和 Officiel DataTable 文檔中找到了它)table.columns([0, 1]).search('bla\\s*$', true, false).draw()但它不起作用,所以,我分析它,我發現datatable搜索使用 AND 運算符,這意味著'bla'需要存在于兩列,但我想使用 OR 運算符。我嘗試創建我的自定義過濾器,但除了實現的繁重之外,它還有很多問題,是否有任何解決方案可以在數據表的搜索列上使用 OR 運算符?
查看完整描述

1 回答

?
守候你守候我

TA貢獻1802條經驗 獲得超10個贊

使用自定義插件 using $.fn.dataTable.ext.search,因為它只是一組函數,您可以根據需要使用該事實來激活和停用過濾器


myfilter = function(settings, data, dataIndex) {

var str1 = data[0]

var str2 = data[1]

if (str1.search(/bla\\s*$/g) != -1 || str2.search(/bla\\s*$/g) != -1) {

  return true;

}

return false;

});


$.fn.dataTable.ext.search.push(myfilter)

    

   

刪除您只需執行的過濾器


$.fn.dataTable.ext.search.splice($.fn.dataTable.ext.search.indexOf(myfilter, 1));


查看完整回答
反對 回復 2022-10-27
  • 1 回答
  • 0 關注
  • 122 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號