如何为按enter键执行搜索的现有代码创建搜索按钮?php/javascript/mysql

如何为按enter键执行搜索的现有代码创建搜索按钮?php/javascript/mysql,javascript,php,mysql,ajax,codeigniter,Javascript,Php,Mysql,Ajax,Codeigniter,我有一个网站,其他人一直在为我编码,我试图了解如何改变一件简单的事情 我不是webdeveloper,但在过去的几天里,我对php、mysql和javascript(我熟悉java)有点熟悉 ****问题是:**** 在我的网站上,我有一个没有搜索按钮的搜索表单(按enter键或从autocomplete中选择时搜索功能工作)。如何将其更改为仅使用搜索按钮 该web是使用名为CodeIgniter的框架开发的 这就是控制器的外观: 这是模型的外观: 这是index.php搜索表单: &

我有一个网站,其他人一直在为我编码,我试图了解如何改变一件简单的事情

我不是webdeveloper,但在过去的几天里,我对php、mysql和javascript(我熟悉java)有点熟悉

****问题是:**** 在我的网站上,我有一个没有搜索按钮的搜索表单(按enter键或从autocomplete中选择时搜索功能工作)。如何将其更改为仅使用搜索按钮

该web是使用名为CodeIgniter的框架开发的

这就是控制器的外观:

这是模型的外观:

这是index.php搜索表单:

<div class="search-home"> <input type="text" onkeypress="gymhandle(event);" class="form-control gym_search" id="gym" name="gym" placeholder=" Search by Name " > <div class="autosuggest1"></div> <div class="autosuggest"></div> </div> <script> function settextbox(rval){ $('.autosuggest').hide(); $('#gym').val(rval); $('#gym_search2').val(rval); searchGymByName(rval); } $(document).ready(function(){ $('.autosuggest').hide(); $('#gym').keyup(function(e) { var code = (e.keyCode || e.which); // do nothing if it's an arrow key if(code == 37 || code == 38 || code == 39 || code == 40 || code==13) { return; } var search_term = $(this).val(); var getdata = { 'search_term': search_term}; if(search_term!=''){ $.ajax({ url: "<?php echo site_url('hebrew/searchGymAuto');?>", data: getdata, type: 'POST', success: function(data){ $('.autosuggest').show(); $('.autosuggest').html(data); } }); } else { $('.autosuggest').hide(); } }); }); $('.autosuggest').hide(); function searchGymByName(rval) { $('.autosuggest').hide(); var gym_name=rval; $.ajax({ url:"<?php echo site_url();?>hebrew/searchGym", type: "POST", data:{gym_name: gym_name}, success:function(res){ $('html, body').animate({ scrollTop: 0 }, 0); $("#ajax-map").hide(); $("#city").val(''); $("#city1").val(''); $("#ajax-page-hide").show(); $("#ajax-page-hide").html(res); } }); }
函数settextbox(rval){ $('.autosuggest').hide(); $('健身房').val(rval); $('2').val(rval); 按名称搜索(rval); } $(文档).ready(函数(){ $('.autosuggest').hide(); $(“#健身房”).keyup(功能(e) { var代码=(e.keyCode | | e.which); //如果是箭头键,什么也不要做 如果(代码==37 | |代码==38 | |代码==39 | |代码==40 | |代码==13){ 返回; } var search_term=$(this.val(); var getdata={'search\u term':search\u term}; 如果(搜索词!=''){ $.ajax({ url:“”, 数据:getdata, 键入:“POST”, 成功:功能(数据){ $('.autosuggest').show(); $('.autosuggest').html(数据); } }); } 其他的 { $('.autosuggest').hide(); } }); }); $('.autosuggest').hide(); 函数名(rval) { $('.autosuggest').hide(); var\u name=rval; $.ajax({ url:“希伯来文/搜索健身房”, 类型:“POST”, 数据:{gym_name:gym_name}, 成功:功能(res){ $('html,body').animate({scrollTop:0},0); $(“#ajax映射”).hide(); $(“#城市”).val(“”); 美元(“#city1”).val(“”); $(“#ajax页面隐藏”).show(); $(“#ajax页面隐藏”).html(res); } }); }


谢谢

您可以取消以下字段上的enter键:

$('.gym_search').keypress(function(e){
    if ( e.which == 13 ) return false;
    //or...
    if ( e.which == 13 ) e.preventDefault();
});

从搜索输入字段中删除id属性,并在搜索按钮上放置id=“gym”。然后在$(“#gym”)。单击(功能(e)[注意:'click'而不是'keyup',将搜索词更改为

var search_term = $("gym_search").val();

从文本框中删除onkeypress事件。添加用于在java脚本函数中搜索的ajax调用,并在按钮单击事件上调用该函数是该函数导致它自动加载。每当我试图禁用它时,请在某人按下搜索按钮时使用此函数。按下按钮时如何调用此函数?这是我的按钮代码:删除$('#gym')。键入(函数(e)和添加$('[name=“searchgymbutton”]”)。单击(函数(e)在它的位置我尝试了它(见新代码),但它没有取消它..有什么想法吗?
$(document).ready(函数(){$('.autosuggest').hide();$('#gym').keyup(函数(e){var code=(e.keyCode | e.which)//取消输入$('.gym| search').keypress(函数(e){if(e.which==13)返回false;}
addcode==13在你的
$(“#健身房”).keyup(函数(e){}
$('.gym_search').keypress(function(e){
    if ( e.which == 13 ) return false;
    //or...
    if ( e.which == 13 ) e.preventDefault();
});
var search_term = $("gym_search").val();