Javascript 在ajax实时搜索中使用多个$(function()

Javascript 在ajax实时搜索中使用多个$(function(),javascript,jquery,ajax,Javascript,Jquery,Ajax,我创建了一个实时搜索。当我打开页面时,我想运行$function{。这只运行一次ajax,所有的输出都会显示出来。但我想在我键入SearchBox时,它也会更新页面,这就是我为什么使用$search.keyup函数的原因{。我希望当我按下其中一个复选框时,它也会更新页面,该复选框会向livesearch$'.btn.clickfunction添加一些其他值{ 这就足够了。您甚至不需要使用click事件,因为它将在每种类型上触发。否则,您可以使用click而不是keyup,它将在单击按钮时触发。

我创建了一个实时搜索。当我打开页面时,我想运行$function{。这只运行一次ajax,所有的输出都会显示出来。但我想在我键入SearchBox时,它也会更新页面,这就是我为什么使用$search.keyup函数的原因{。我希望当我按下其中一个复选框时,它也会更新页面,该复选框会向livesearch$'.btn.clickfunction添加一些其他值{

这就足够了。您甚至不需要使用click事件,因为它将在每种类型上触发。否则,您可以使用click而不是keyup,它将在单击按钮时触发。 每次你在搜索中输入一些东西,你也会检查其他字段的值。我很好奇每个getval功能里面都有什么,因为它们可能会被更简单的东西取代,顺便说一句,不需要四个不同的函数

注意:$document.ready{};用于告诉浏览器在执行代码之前等待加载整个页面。只有在页面中包含所有js的情况下,才能使用其中一个。您定义的函数与执行代码时一样

function getval1(){
//your function here
}

不需要在document ready语句中

您可以添加一个console.logsearch,val1,val2,val3,val4;最后在该函数中,检查开发工具下的浏览器控制台,查看是否在key up上获得任何输出。我不知道如何使用console.log语句。您能剪下一段代码来处理该文件吗?这将是学习它的最佳时机。我刚刚给了你一个代码片段。把我在我的评论中写的东西放到console.log中,放在let val4=getval4之后的行中;不过你有一个问题。你的load_data函数需要一个参数来处理查询,但你在调用该函数时从未向该函数传递任何参数。但是当我输入ano时,我的搜索没有更新有一些按钮和搜索栏。这是我为什么使用$'search'.keyupfunction{和$'btn'.clickfunction的原因{
<script type="text/javascript">
search_data()
$(document).ready(function(){
$('#search').keyup(function(){
    search_data()
});
$('.btn').click(function(){
    search_data()
});
});
function search_data(query){
    var search = $('#search').val();
    let val1 = getval1();
    let val2 = getval2();
    let val3 = getval3();
    let val4 = getval4();
    $.ajax({
        url:"search.php",
        method:"post",
        data:{
            query:query,
            search:search,
            val1:val1,
            val2:val2,
            val3:val3,
            val4:val4,
        },
        success:function(data){
            $('#output').html(data);
        }
    });
}
</script>
function getval1(){
//your function here
}
<script type="text/javascript">
search_data()
$(document).ready(function(){
$('#search').keyup(function(){
    search_data()
});
$('.btn').click(function(){
    search_data()
});
});
function search_data(query){
    var search = $('#search').val();
    let val1 = getval1();
    let val2 = getval2();
    let val3 = getval3();
    let val4 = getval4();
    $.ajax({
        url:"search.php",
        method:"post",
        data:{
            query:query,
            search:search,
            val1:val1,
            val2:val2,
            val3:val3,
            val4:val4,
        },
        success:function(data){
            $('#output').html(data);
        }
    });
}
</script>