在初始页面加载

时间:2016-03-02 16:39:16

标签: javascript php jquery ajax onload

我在php中有一个AJAX设置来返回并显示来自DB的一些数据:

$("#sub_shops").click(function(){
                    var range_start = $("#start_shops").val();
                    var range_end = $("#end_shops").val();
                    $.ajax({
                        url:'process_shops.php',
                        data:{start:range_start,end:range_end},
                        type:'POST',
                        success:function(data){
                            $("#result_shops").html(data);
                        }
                    });
                });

在页面#start_shops#end_shops上有两个输入,在填写数据并点击#sub_shops页面后,将值从输入发送到process_shops.php。处理完毕后,它会在#result_shops

中显示结果
<div id="result_shops"></div>

问题:

如果为#start_shops#end_shops输入设置了默认值,如何将其值发送到process_shops.php并在#result_shops中显示已处理的结果在初始页面加载

提前致谢!

3 个答案:

答案 0 :(得分:3)

首先将代码分解为函数:

function updateResultShops()
{
    var range_start = $("#start_shops").val();
    var range_end = $("#end_shops").val();
    $.ajax({
       ...
}

然后从点击处理程序中调用它:

$("#sub_shops").click(updateResultShops);

关于文档加载!

$(document).ready(updateResultShops);

现在,任何初始值都会在页面加载时立即发送,并且每次单击时都会发送。简单!

答案 1 :(得分:2)

如果值已预先加载到输入中,我认为最简单的方法是

$("#sub_shops").click(function(){
    // your code...
}).trigger('click');

答案 2 :(得分:1)

您可以将匿名函数转换为函数。

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div style="background-color: black; height: 50px; width: 50px;" id="sub_shops"></div>
$(document).ready($("#sub_shops").click);

但如果您希望将该功能留在点击中......您可以这样做:

{{1}}