我用 PHP 编写脚本,里面有 HTML 和 javascript。我想要的是当我单击一个按钮(在 HTML 中)时,它会调用一个 javascript 函数,该函数应该访问一个像“http://localhost/1/2”这样的 url,并且页面保持不变。可行吗?
我只想让它工作,无论是在 js 还是 php 中。谢谢。
由于页面在同一个域中,您可以使用 Ajax 请求:
var request = new XMLHttpRequest();
request.open("GET", url, true);
request.send(null);
但是请注意,这不会进行任何错误检查。如果您需要,可以通过搜索轻松找到大量可用的教程。
而且由于您要求,对于不在同一域中的页面,<iframe>
有时可以使用 an :
var frame = document.createElement("iframe");
frame.src = url;
frame.style.position = "relative";
frame.style.left = "-9999px";
document.body.appendChild(frame);
这通常称为 AJAX(能够在不离开页面的情况下向服务器发送请求并接收响应)。
所有现代浏览器都支持 AJAX,但有时会出现不一致,因此最好使用 javascript 框架,例如JQuery、YUI或其他框架。
我倾向于使用 YUI,所以这里有一个关于如何使用 YUI 发送 AJAX 请求的快速示例。这使用IO 实用程序:
// Create a YUI instance using io module.
YUI().use("io", function(Y) {
var uri = "http://localhost/1/2";
// Define a function to handle the response data.
function complete() {
Y.log('success!');
};
// Subscribe to event "io:complete"
Y.on('io:complete', complete);
// Make an HTTP request to 'get.php'.
// NOTE: This transaction does not use a configuration object.
var request = Y.io(uri);
});