PHP JQuery 文档准备好添加 IF 语句会中断 .show( )

标签 php jquery if-statement document-ready

以下代码放置在 (document).ready 函数中,可正确显示订单表单:

    <?php   if (isset($_POST['preview-order'])) {    //IF PREVIEW FORM  ?>
            $("#cam-order-preview").show('slow');
    <?php   } else {                                //ELSE ORDER FORM  ?>               
        if (lastAreaVisible != "") { 
            $("#<?php echo $_SESSION['last_area_visible'];?>").css("visibility", "visible");
            $("#<?php echo $_SESSION['last_area_visible'];?>").css("position", "relative");
            $("#<?php echo $_SESSION['last_area_visible'];?>").css("display", "block");
            $("#<?php echo $_SESSION['last_area_visible'];?>").show('slow');            
        } 
            $("#cam-order-form").show('slow');
            $("#cam-order-nav").show('slow');                   
            $("#order-comment-box").show('slow');

问题是,如果设置了“last_area_visible”值,我想有条件地隐藏其他部分,因此我添加了一个 else 语句,如下所示,但 else 语句会导致整个表单中断,并且不会显示任何内容,就像 jquery 一样停止解析。

<?php   if (isset($_POST['preview-order'])) {   //IF PREVIEW FORM   ?>
                $("#cam-order-preview").show('slow');
        <?php   } else     {                                //ELSE ORDER FORM   ?>              
if (lastAreaVisible != "") { 
 $("#<?php echo $_SESSION['last_area_visible'];?>").css("visibility", "visible");
 $("#<?php echo $_SESSION['last_area_visible'];?>").css("position", "relative");
 $("#<?php echo $_SESSION['last_area_visible'];?>").css("display", "block");
 $("#<?php echo $_SESSION['last_area_visible'];?>").show('slow');           
} else { 
 $("#cam-order-form").show('slow');
 $("#cam-order-nav").show('slow');                  
 $("#order-comment-box").show('slow');
}

有什么见解吗?顶部代码可以工作并显示所有部分,我只想隐藏底部三个部分,但 jquery 由于某些奇怪的原因不喜欢它。

最佳答案

终于弄清楚了,这个问题的发生是因为顶部 block 中的选择器实际上是嵌套在cam-order-form中的div。添加

 $("#cam-order-form").show('slow');
 $("#cam-order-nav").hide('slow');

由于 div 的嵌套,如果 block 允许根据需要进行行为,则到顶部。

因此,当显示或隐藏产生意外结果时要注意的另一件事是:检查您要显示的 div 的嵌套。

关于PHP JQuery 文档准备好添加 IF 语句会中断 .show( ),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15538875/

相关文章:

php - 一起使用 mysql_fetch_assoc 和 mysql_result 吗?

php - Elasticsearch 评分始终为 0

PHP & MYSQL 返回空白页

javascript - 优先使用 .on() 方法而不是 .click()、.bind()、.hover()、.load()、.ready() 等

javascript - Sitecore 版本 6.6 升级到 7.0 后出现 JS 错误

javascript - NodeJS,多个 if 可能返回 header (并且失败)

c - PowerPC 程序集中的 "ifdef"

php - 在多维树状数组中查找键的路径

javascript - jQuerydialog() 在一个页面上有效,但在另一页上无效

javascript - 浓缩 if, else 条件相似的 JS