【发布时间】:2016-10-10 01:46:56
【问题描述】:
我有一个注册表单 div,它应该在单击按钮时打开。在页面加载时默认设置为display: none。在表单提交失败时,我的 JS 文件中有这段代码(它有效,我在默认情况下使用 display: inline-block 设置进行了测试):
$(document).ready(function(){
<?php
if(isset($_POST['signUp']) && count($errors)>0){
?>
$ ('#home-sign-up-box').show();
<?php
}elseif(isset($_POST['signUp']) && count($errors)==0){
?>
$('#home-sign-up-box').hide();
<?php
}else{
?>
$('#home-sign-up-box').show();
<?php
}
?>
});
我也有这段代码,它应该显示 div(在我添加上面的代码之前它已经工作了):
// Log in and sign up buttons
$("#log-in-button").click(function() {
$("#home-log-in-box").show();
$("#home-log-in-box").animate({
"opacity":1
}, 115);
$(".body-darken").show();
$(".body-darken").animate({
"opacity":0.5
}, 115);
});
$(".body-darken").click(function() {
$("#home-log-in-box").animate({
"opacity":0
}, 115);
$("#home-log-in-box").hide();
$("#home-sign-up-box").hide();
$(".body-darken").animate({
"opacity":0
}, 115);
$(".body-darken").hide();
});
$("#home-log-in-close").click(function() {
$("#home-log-in-box").animate({
"opacity":0
}, 115);
$("#home-log-in-box").hide();
$(".body-darken").animate({
"opacity":0
}, 115);
$(".body-darken").hide();
});
$("#sign-up-button").click(function() {
$("#home-sign-up-box").show();
$("#home-sign-up-box").animate({
"opacity":1
}, 115);
$(".body-darken").show();
$(".body-darken").animate({
"opacity":0.5
}, 115);
});
$("#home-sign-up-close").click(function() {
$("#home-sign-up-box").animate({
"opacity":0
}, 115);
$("#home-sign-up-box").hide();
$(".body-darken").animate({
"opacity":0
}, 115);
$(".body-darken").hide();
});
它们都在同一个文件中,按照显示的顺序。非常感谢!非常感谢任何帮助!
【问题讨论】:
-
你在这里将 PHP 注入到 JS 中
-
我是 Web 开发的新手,这样做是不是一个坏主意?谢谢!
-
这是不好的做法。我会考虑为此使用ajax。如果这是一个
.js文件,如果它是一个.php文件,我看不出它是如何工作的,那么你需要不断地进出JS/PHP 标签。 -
做一件事在 php 会话中获取您的注册错误值。我有同样的问题。 like $_SESSION['signUpError'] = 1;//如果出现注册错误。现在在文档就绪函数中创建一个全局变量 var myGlobalSignUp = '';在文档就绪函数中,通过 php session 变量填充此变量检查 isset 条件和值是否为 1,然后显示您的错误消息。
标签: javascript php jquery css forms