该代码是正确的。但一切都取决于你的设置。 fnFilter只接受一个需要的参数,这是要搜索的文本。如果你指定第二个参数,你将只过滤一列,否则它将搜索所有表格中的文本。您当然可以立即过滤多个表格
//initialize table 1
var oTable = $('#myTable').dataTable();
//initialize table 2
var oTable2 = $('#myTable2').dataTable();
$('#myInpuTextField').keypress(function(){
//filter table one
oTable.fnFilter($(this).val());
//filter table two
oTable2.fnFilter($(this).val());
})
编辑 - 为您的最后评论。为此,您必须使用表单将值发布到服务器。 然后,您在输入字段中“预载”发布的值并调用fnFilter。就像(在PHP中)
<?php
$postedSearch = $_POST['posted'];
?>
<script type="text/javascript">
$(function(){
var oTable = $('#idOfTable').dataTable();
if($('#myInputTextField').val() !== ''){
oTable.fnFilter($('#myInputTextField').val());
}
}())
</script>
<input type="text" id="myInputTextField" value="<?php echo $postedSearch ?>" />
感谢这就是很好知道,我只想查询一个表,但这。我只是做一个正常的形式,并张贴到数据表所在的页面 – Codded 2012-03-13 11:15:17
@Code这个过滤完成服务器端,你不需要发布任何东西。如果标题和表格在同一页面上,则一切正常 – 2012-03-13 11:17:07
标题位于网站的所有页面上,例如20.该数据表格位于1页面上。我想从任何页面上的标题搜索数据表。当我提交它将重定向到带有数据表的页面,然后用于过滤表。 – Codded 2012-03-13 11:23:04