简体   繁体   中英

Javascript simulate pressing enter in input box

I have what seemed to be a simple fix to a problem but after trying a ton of different solutions online nothing seems to work for me.

I have search field that searches a data table every time you type or press enter in the input field, however after I assigned a value to the search box when the page is loaded it wont do the search until after the user either presses enter in the box or types / deletes a letter. I was just trying to find a solution to simulate hitting enter but it didn't seem to work.

Here is my code:

<script type="text/javascript">
       window.onload = (function() {
           document.getElementById('search').value = " <?php echo $search;?>";

       });
</script>

This obviously assigns the value to what my php variable is set to which works fine the text is loaded in the box on page load, it just doesnt perform the search like I said unless the user presses enter in the box OR deletes/adds a letter in the input box.

The search box code is

<input type="text" id="search" aria-controls="DataTables_Table_0" class="text">

Update: This is documentation I found on exactly what I am using http://datatables.net/ref

尝试这个

document.getElementById("formId").submit();

You can call the onchange() event in javascript:

<script type="text/javascript">
   window.onload = (function() {
       document.getElementById('search').value = " <?php echo $search;?>";
       document.getElementById('search').onchange();
   });
</script>

This answer also has an alternative: https://stackoverflow.com/a/3629423/890726

I assume you have a form, the enter in the textbox will trigger the submit of the form. In javascript you can do this manually like this:

<form id='myform" action="/foo">

document.forms["myform"].submit();
       <input type="text" id="fname" onblur="businessFun()">

请尝试此操作,如果您使用ajax通过当前时间作为参数,请在js buinessFun()中执行搜索操作

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM