我将这段代码放入我的php文件中:
<?php
if(isset($_POST['submit'])){
if($_POST['email'] != ''){
$email = $_POST['email'];
$query = "INSERT INTO user(email) VALUES('". $email . "')";
$stmt = $db ->query($query);
if($stmt){
echo "<script>displayPopup('success')</script>";
}else{
echo "";
}
}
}
?>
我的JS文件包含在结束标记之前,并且收费很高。但我有错误说明函数displayPopup未定义
有什么想法吗? :(
答案 0 :(得分:1)
据我所知,主要问题是displayPopup函数是在文档末尾定义的。
PHP是服务器端而JS是客户端,在加载/读取javascript之前发生回调脚本的条件。
这意味着在执行该脚本时,“displayPopup”函数实际上并不存在。
最快的测试方法是在&lt;结束之前添加以下代码: /头&GT;标记:
<script type="text/javascript">
function displayPopup(msg){
alert(msg);
}
</script>
显然,您可以使用实际的displayPopup函数替换该函数。另一种方法是使用Ajax提交表单以获得更加无缝的体验,但上述内容应该可以解决您的问题。
我希望这有帮助!