1

概述

在页面加载后 5 秒内,我有 div#lead_form 的 SlideDown。在那个 div 中,我有一个提交按钮。每次有人单击提交时,#lead_form 中的表单都会验证输入字段并刷新页面。

问题

每次表单验证时,它都会刷新网页,并且 div#lead_form SlideDown 需要 5 秒才能滑入。我想要做的是,有一个 true false 变量并检查是否已单击提交按钮,如果为 true,则禁用div#lead_form SlideDown 效果?

我的 HTML

<div id="lead_form">
<div id="button"><a href="#"></a></div>
</div>

我的 jQuery

$(document).ready(function() {
 $("#lead_form").hide(0).delay(4000).slideDown(5000);
});

发现

这不是我所追求的,而是类似的?

4

2 回答 2

2

在您的服务器端代码中检查请求是否与您提交的表单一起出现,并将结果作为 javascript var 写入页面的给定部分

if( isset($_POST['yourFORMFIELD']) )
{
     echo "var postBack = true;";
}

然后将您的 jQuery 更改为

$(document).ready(function() {
    if(!postBack) {
        $("#lead_form").hide(0).delay(4000).slideDown(5000);
    }
});
于 2012-10-04T23:51:10.710 回答
0

由于页面重新加载,您无法仅使用 javascript 解决此问题。您必须以某种方式保持状态(如果已提交表单)并在重新加载页面后检查该状态。您可以通过 cookie 或本地存储来执行此操作(本地存储仅适用于最新的浏览器)

于 2012-10-04T23:53:56.997 回答