0

我有一个功能可以在单击按钮时打开一个模式窗口。如何修改它以便在页面加载时打开(嗯......在处理表单之后)

这是打开对话框的函数:

$j(function () {
    $j('#popup-wrapper').modalPopLite({ 
        openButton: '#clicker', 
        closeButton: '#close-btn' 
    });
});

这是它需要去的地方:

if(isset($_POST['submitted']))
{
   if($formproc->ProcessForm())
   {
        $formproc->RedirectToURL("thank-you.php");
   }
}

谢谢你

4

2 回答 2

0

尝试

$('form').submit(function(){
 $('#popup-wrapper').trigger('click');
});

更新

您必须通过 ajax(post) 提交表单并在complete:success:部分调用上述函数

替代方案:(未测试)

<?php if($formproc->ProcessForm()) { ?>
       <script>$('#popup-wrapper').trigger('click');</script>
<?php  } ?>
于 2012-09-19T11:22:49.027 回答
0

我可能有这个错误,但如果你想在你的“thank-you.php”页面上打开它,在页面加载时(正如我看到的问题)你可以将以下内容放在你的 html 中的任何位置(最好在 jquery include 之后的头部)

<script>
    $(document).ready( function(){
        $j('#popup-wrapper').modalPopLite({ openButton: '#clicker', closeButton: '#close-btn' });
    });
</script>

抱歉,如果我完全误解了这一点...

祝你好运!

编辑

好吧,如果你想要它,为什么不捕获一个 php 变量中的字符串,以便以后在你的页面中使用呢?喜欢...

$modal = '';

if ($userHasPosted){

    $modal = "<script ... />";

}

... later in the page (maybe in the head somewhere) ...

echo $modal;

这有任何意义吗?

于 2012-09-19T11:39:42.770 回答