我有一个 php 页面,比如 demo.php,我正在使用<script src="demo.php"></script>
. 我需要知道是否可以使用 javascript 加载另一个页面。我试图包含一个 javascript 函数,但没有加载所需的页面。请给我一个解决方案。
5 回答
编写方法并保存。并在 filename.js 之类的文件中
<head>
<script type="text/javascript" src="filename.js"></script>
<head/>
或使用
<script type="text/php" src="demo.php"></script>
或者
$(document).ready(function(){
$('#div').load('demo.php');
});
你也可以使用ajax。喜欢
$.ajax({
type: "POST",
url: "demo.php",
data: { name: name, email: email }
,
success: function(msg) {
// alert(msg);
}
});
希望它会帮助你。
如果你使用 jQuery,你可以调用
$.getScript('other_file.js', function() {
// script loaded
});
没有 jQuery,你可以在 head 中附加脚本
var script = document.createElement('script');
script.setAttribute('src', 'other_file.js');
document.getElementsByTagName('head')[0].appendChild(script);
编辑:如果该文件不是 php 中的 javascript,那么调用它只需使用普通的 ajax。使用 jQuery 它将是:
$.get('script.php', function(result) {
// do something with output from a script
});
如果您不想这样,请跳过此答案,但这是使用 PHP 作为示例。有人需要这个例子。
在 PHP 中包括使用 Javascript 代码:
<?php echo '<script type="text/javascript" src="somejavscript.js" />'
检查确实是您的 javascript 代码:
或者像这样检查它:
<head>
<?php
$javascript_file = "somedir/somejavscript.js";
if (file_exists($javascript_file))
{
echo '<script type="text/javascript" src="'.$javascript_file.'" />' ?>
}
else
{
die('file not found: '.$javascript_file);
}
?>
</head>
注意,如果die()
函数调用它将停止脚本并显示消息错误!仅用于测试。
如果要在当前页面中加载另一个页面,请使用ajax 和 jQuery(简单且跨浏览器)。
创建到 javascript 文件 (*.js):
- “jquery.min.js”并复制/粘贴[this][2]。
- “actions.js”
在 actions.js 中:
jQuery(function($){
$.ajax({
url: "demo.php"
})
.done(function(data){
$("body").append(data) // add the loaded page as html at the body end
})
.fail(function(){
console.log("fail to load demo.php");
});
});
根据评论,我不确定,你在找什么。我假设,如果你想加载另一个页面,这意味着你想加载另一个 HTML 页面,因此它被称为重定向:
尝试从 javascript 修改 window.location 属性。window.location.href = "demo.php";
或者更准确地说:window.top.location.href = "demo.php";
但是如果你想动态加载一个脚本文件,你可以使用评论中提到的 jQuery 加载函数,或者使用 3 行 javascript:
var s = document.createElement("script"); // create an empty script tag
s.src = "demp.php"; // specify source
document.getElementsByTagName("head")[0].appendChild(s); // append it to the head tag
// Optionally you can delete the new script tag from the DOM, because the executed code will remain in the memory:
s.parentNode.removeChild(s);
希望这可以帮助。
此外,如果您想从 javascript 调用 PHP 函数(因为我在评论中也读到了),而不是寻找 PHP 库:XAJAX