簡體   English   中英

在jQuery Datatables中初始化搜索輸入

[英]Initialize search input in jQuery Datatables

我正在嘗試使用用戶可以替換或優化的默認搜索值初始化數據表。 這是服務器端數據。 我沒有在Datatables文檔中閱讀過您可以執行此操作的任何內容。

$('#example_filter label input[type=text]').val('Default Product')

上面設置了值,但因為沒有涉及按鍵,事件處理程序不會提取它。 有沒有一種方法可以鏈接到上面,就像輸入鍵一樣,或者我應該編寫一個事件處理程序來查找字段中的更改。 我是數據表和jQuery新手的新手。

所以正確的方法是使用oSearch參數。

https://datatables.net/docs/DataTables/1.9.0/DataTable.defaults.oSearch.html

$(document).ready( function() {
  $('#example').dataTable( {
    "oSearch": {"sSearch": "Initial search"}
  } );
} )

您可以使用.trigger()手動觸發事件:

$('#example_filter label input[type=text]')
    .val('Default Product')
    .trigger($.Event("keypress", { keyCode: 13 }));

根據您的代碼,您可能需要"keyup"

現在正確的方法是:

var table = $( '#mytable' ).DataTable();
table.search( 'initial search value' ).draw();

引用oSearch的答案正在使用遺留語法。 從DataTables 1.10+開始 ,正確的語法是:

$(document).ready( function() {
  $('#example').dataTable( {
    "search": {"search": "Initial search"}
  });
});

您可以更改默認設置:

 var my_config = { oLanguage: { sSearch: "" }, oSearch: { sSearch: "Default Search value" } }; $('#search').dataTable(my_config); 

$('#example_filter label input[type=search]').val(i).trigger($.Event("keyup", { keyCode: 13 }));

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM