如何在没有jQuery的情况下在javascript中执行php文件
Posted
技术标签:
【中文标题】如何在没有jQuery的情况下在javascript中执行php文件【英文标题】:How to execute php file in javascript WITHOUT jQuery 【发布时间】:2017-02-02 06:52:22 【问题描述】:我是 php 和 javascript 的新手,正在寻找一个简单的解决方案,如何从 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 中创建自定义进度条?