我有一个似乎只是解决问题的简单方法,但在网上尝试了大量不同的解决方案之后,似乎对我没什么用。
我有搜索字段,每次键入时都会搜索数据表,或者在输入字段中按Enter键,但是当我在页面加载时将值分配给搜索框后,它将不再进行搜索,直到用户按下在框中输入或键入/删除一个字母。我只是想找到一个模拟击中输入的解决方案,但它似乎没有用。
这是我的代码:
<script type="text/javascript">
window.onload = (function() {
document.getElementById('search').value = " <?php echo $search;?>";
});
</script>
这显然将值设置为我的php变量设置为什么工作正常,文本加载在页面加载的框中,它只是没有像我说的那样执行搜索,除非用户在框中输入或删除/在输入框中添加一个字母。
搜索框代码为
<input type="text" id="search" aria-controls="DataTables_Table_0" class="text">
更新:这是我在使用http://datatables.net/ref
时所找到的文档答案 0 :(得分:1)
试试这个
document.getElementById("formId").submit();
答案 1 :(得分:0)
您可以在javascript中调用onchange()
事件:
<script type="text/javascript">
window.onload = (function() {
document.getElementById('search').value = " <?php echo $search;?>";
document.getElementById('search').onchange();
});
</script>
这个答案也有另一种选择:https://stackoverflow.com/a/3629423/890726
答案 2 :(得分:0)
我假设您有一个表单,文本框中的enter将触发表单的提交。在javascript中,您可以像这样手动执行此操作:
<form id='myform" action="/foo">
document.forms["myform"].submit();
答案 3 :(得分:0)
<input type="text" id="fname" onblur="businessFun()">
请尝试这个并在js buinessFun()中执行搜索操作 如果你使用ajax传递当前时间作为参数