如何在没有jQuery的情况下在javascript中执行php文件

Posted

技术标签:

【中文标题】如何在没有jQuery的情况下在javascript中执行php文件【英文标题】:How to execute php file in javascript WITHOUT jQuery 【发布时间】:2017-02-02 06:52:22 【问题描述】:

我是 phpjavascript 的新手,正在寻找一个简单的解决方案,如何从 javascript 执行 php 文件。我偶然发现了几个例子(here 和here),但他们使用的是 jQuery,我想避免它。

我的意图是像第二个示例一样在服务器上运行更新过程。

var stillAlive = setInterval(function () 
    /* XHR back to server
       Example uses jQuery */
    $.get("stillAlive.php");
, 60000);

我正在考虑使用 AJAX 方法,但所有示例都显示了如何发送和获取请求中的一些数据。这里我不需要发送任何东西,只需要执行简单的 php 文件。我不知道如何使用 AJAX 这种简单明了的方式。

感谢您的建议

【问题讨论】:

尝试寻找像这样的“vanilla javascript ajax”教程sitepoint.com/guide-vanilla-ajax-without-jquery 这里我不需要发送任何东西,只需要执行简单的 php 文件。 不过你仍然需要使用 AJAX,因为这是唯一的方法 从 javascript 执行脚本。 @hindmost - 不完全是。由于他不想发送或检索任何数据,他可以只拥有一个隐藏的 iframe,并在设定的时间间隔内重新加载 【参考方案1】:
function set()
frame=document.createElement("iframe");
frame.src="yourfile.php";
frame.style.opacity=0;
body.appendChild(frame);
frame.onload=function()
body.removeChild(this);
window.setTimeout(function()
set();
,2000);

set();

这会创建一个新的 iframe,如果 iframe 已加载,则销毁 iframe 等待 2 秒并重新启动循环。

【讨论】:

谢谢你的回答,但我终于知道了,如何使用AJAX运行php文件。见我上面的回答。 :-) @lyborko:不客气。但如您所知,用户可以通过获得支持等方式赢得声誉。如果您愿意这样做是公平的 :)【参考方案2】:

使用 AJAX(不需要 jQuery)可以很好地工作。该脚本将每 5 秒执行一次 php 文件。

<script>
    var exec_php = function () 
      var xhttp = new XMLHttpRequest();
      xhttp.open("GET", "myroutine.php", true);
      xhttp.send();
    

    setInterval(exec_php, 5000);
</script>

【讨论】:

顺便说一句,如果客户端失去与服务器的连接,比如说5小时,他将有3600个打开的请求!!最好等待答案,并使用超时重新启动功能

以上是关于如何在没有jQuery的情况下在javascript中执行php文件的主要内容,如果未能解决你的问题,请参考以下文章

如何在没有 jQuery 的情况下在 JavaScript 中打开 JSON 文件?

如何在没有 jquery 的情况下在 Angular 中的页面加载时自动打开 HTML 日历

如何在没有 Jquery-ui 且没有 Bootstrap 的情况下在 angularjs 中创建自定义进度条?

如何在没有键的情况下在jquery中绑定json数据

有没有办法在不使用 jQuery UI 和 jQuery Mobile 的情况下在 jQuery 中左右滑动 [重复]

html 在没有jquery的情况下在javascript中处理事件的方法。