页面加载后加载mysql查询

Posted

技术标签:

【中文标题】页面加载后加载mysql查询【英文标题】:Load mysql query after pageload 【发布时间】:2018-03-23 03:40:57 【问题描述】:

我有一些非常大的查询,我只想在页面加载完成后运行它们。

这是我尝试过的。

<head>
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
    <script type="text/javascript">
        $(window).load(function() 
            $("#query").load("sql-query.php");
        );
    </script>
</head>

<div id="query">Loading...</div>

sql-query.php

$data = DB::table('tapplicant')->limit(5000)->get();
var_dump($data);

这个想法是在页面加载后返回查询数据。

【问题讨论】:

@Amani ,我是 Javascript 和 Ajax 的新手,我该怎么做,或者您能否向我推荐一些文档,谢谢您的帮助 你可以用jQuery.ready()代替.load() 我重新构建了您的案例,但出现此错误:TypeError: a.indexOf is not a function 所以您的问题是 jquery 版本..您不能再使用 $(window).load(function() ); 改用 $(window).on("load", function (e) ) --> 请参阅:jquery.com/upgrade-guide/3.0/… 【参考方案1】:

我建议在document.ready() 之后使用jQuery.get()

 $( document ).ready(function() 
     $.get( "sql-query.php", function( data ) 
         $( "#query" ).html( data );
     );
 );

【讨论】:

谢谢,如果我调用 html 文件而不是 php 文件,这项工作就可以了【参考方案2】:

版本不匹配"Uncaught TypeError: a.indexOf is not a function" error when opening new foundation project

<head>
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
    <script type="text/javascript">
        /*
        $( window ).load(function() 
          $("#query").load("sql-query.php");
        );         
        */
        $(window).on('load', function() 
            $("#query").load("sql-query.php");
        );
    </script>
</head>

<div id="query">Loading...</div>

建议您使用文档准备功能(即$(function())而不是窗口加载document.ready vs window

<head>
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
    <script type="text/javascript">
        $(function() 
            $("#query").load("sql-query.php");
        );
    </script>
</head>

<div id="query">Loading...</div>

【讨论】:

【参考方案3】:

这是由于在此 JQuery 版本中所做的一些更改..

改变一下

$(window).load(function() );

$(window).on("load", function (e) ); 并保持其余部分不变。

详情请咨询this。

【讨论】:

以上是关于页面加载后加载mysql查询的主要内容,如果未能解决你的问题,请参考以下文章

页面加载后加载面板内容

在 adminlte-3 bootstrap-4 treeview 打开/隐藏页面加载后加载动态 AJAX 侧边栏菜单 jquery 不起作用

加载 angularjs 视图后加载 jquery 模块?

延迟后加载 iFrame 的源

vue 首次加载缓慢/刷新后加载缓慢 原因及解决方案

jQuery:获取 .timeago() 以处理 DOM 就绪后加载的元素(Ajax)