我使用以下代码创建了一个名为“page.php”的文件。
<!DOCTYPE HTML>
<html>
<body>
<?php
require 'form.php';
?>
<a href="#" onclick="call_popup('form_container')">Click this link!</a>
</body>
</html>
我使用以下代码创建了另一个文件“form.php”:
<script type="text/javascript">
function call_popup (container_id) {
var id= document.getElementById(container_id);
alert(id);
}
</script>
<div id="form_container">
<form>
<input type="text" />
<input type="button" value="submit" />
</form>
</div>
我试图在“page.php”中调用“call.popup(container_id)”函数,该函数在“form.php”中定义。当我点击“点击此链接!”如果没有找到call_popup('form_container')
,那么它会给出错误标记!
我哪里出错了?
答案 0 :(得分:1)
将JavaScript代码放在不同的文件中 - 例如file.js
。
在head
部分的<{1}}部分中,将此文件包含在您希望使用代码的所有HTML文件中:
<!DOCTYPE HTML>
<html>
<head>
<script type="text/javascript" src="file.js"></script>
<head>
<body>
<a href="#" onclick="call_popup('form_container')">Click this link!</a>
</body>
</html>
将客户端代码(JavaScript)与服务器端代码(PHP)分开是更好的做法。
答案 1 :(得分:0)
您需要在“page.php”的开头添加:
require_once("form.php");
但我不确定它是否适用于JavaScript函数..
尝试创建一个JavaScript文件“file.js”,并在两个PHP文件中引用它:
<script src="file.js" type="text/javascript" />
答案 2 :(得分:0)
而不是使用
require 'form.php';
在php
代码中使用
include ()
答案 3 :(得分:0)
我刚刚在我的本地XAMPP上测试了你的设置并且它有效(尽管混合JavaScript和HTML代码并不是最好的做法)。你确定“要求”电话有效吗?您是否在浏览器中看到“form.php”中定义的表单?
也许你只是弄错了“form.php”的路径并且在服务器上禁用了PHP错误消息(在生产环境中并不常见)。在这种情况下,PHP会因为丢失文件而死亡,但不会抛出任何出错的消息......