【发布时间】:2021-11-05 16:00:00
【问题描述】:
我通过 $_GET 为页面带来一个值并将其插入到我的搜索文本框中。该框是使用 ajax 自动完成的。问题是当它被放入搜索框中时,它不会自动搜索。它需要我按一个键才能启动。有没有一种简单的方法可以在插入值后提交它?或者也许是一种不同的方法来实现这一点?
<div class="form-group">
<input type="text" name="search_box" id="search_box" class="form-control input-lg" placeholder="Type your search here" '.(isset($_GET['search']) ? 'value="'.$_GET['search'].'"' : "").' />
</div>
<script>
$(document).ready(function(){
load_data(1);
function load_data(page, query = '')
{
$.ajax({
url:"fetch.php",
method:"POST",
data:{page:page, query:query},
success:function(data)
{
$('#dynamic_content').html(data);
}
});
}
$(document).on('click', '.page-link', function(){
var page = $(this).data('page_number');
var query = $('#search_box').val();
load_data(page, query);
});
$('#search_box').keyup(function(){
var query = $('#search_box').val();
load_data(1, query);
});
});
</script>
【问题讨论】:
-
那么搜索的目的是什么?什么事件触发它?它叫什么?我们需要一些细节,以便我们无需猜测即可回答。
-
我刚刚发布了 javascript。
-
GET 在 if 语句内的文本框中。那将在代码中的哪里?我可以整天都在 PHP 中找到自己的方法,但我是 javascript 的一个极端新手。
-
啊,我的错,我以为你的 $.get 有错字:)
-
将您的第一行
load_data(1);更改为load_data(1, $('#search_box').val());
标签: javascript php jquery ajax