FancyBox PHP表单提交问题

时间:2013-03-23 02:15:05

标签: php javascript jquery fancybox

好的,所以我在过去四天遇到了问题,几个小时前,我想我可能已经解决了部分问题(fancybox示例#5,在他们的网站上,似乎是我但是,我不能让它的任何部分工作。

    <?  if($_GET['page'] != "startTime"){ ?>
    <script type="text/javascript" src="http://code.jquery.com/jquery-1.4.2.min.js"></script>
    <script type="text/javascript" src="/./fancybox/jquery.mousewheel-3.0.2.pack.js"></script>
    <script type="text/javascript" src="/./fancybox/jquery.fancybox-1.3.1.js"></script>
    <link rel="stylesheet" type="text/css" href="/./fancybox/jquery.fancybox-1.3.1.css" media="screen" />
    <script type="text/javascript">
        $(document).ready(function() {
            $("#startTime").fancybox({
            'padding'       : 0,
            'scrolling'     : 'no',
            'titleShow'     : false,
            'onClosed'      : function() {
            $("#login_error").hide();}
            })
        });
        $("#startTimeForm").bind("submit", function() {
        if ($("#year").val().length < 4) {
            $("#login_error").show();
            $.fancybox.resize();
            return false;
        }
        $.fancybox.showActivity();
        $.ajax({
            type    : "POST",
            cache   : false,
            url     : "downTime.php?page=ajax",
            data    : $(this).serializeArray(),
            success : function(data) {
                $.fancybox(data);
            }
        });
        return false;
        });
    </script>
<? } ?>
<? if($_GET['page'] == "ajax"){
var_dump($_POST); } ?>
<? if($_GET['page'] == "startTime"){?>
<div style="width:250px" class="new">
  <table cellpadding="0" cellspacing="0" border="0" width="100%" class="new">
   <tr>
   <form id="startTimeForm" method=post>
    <p id="login_error">Please, enter data</p>
   <tr>
    <td>Enter Year</td>
    <td><input class="czas" id="sec" name="year" type="text" size="5" maxlength="5" value="00" /></td></tr>
   <tr>
    <td colspan="2" align="center"><br /><input class="czas" type="submit" name="newTime" value="Set Start Time" /></td></tr>
   </form>

我也使用了下面的javascript函数,我最终希望在上面的代码中使用它,但是我无法使上面的代码正常工作。它什么都不做。 Firebug也报告没有错误。

<script>
    function closeFB() {
    <? $unix = mktime(0, 0, 0, 1, 1, $_POST['year']); ?>
    $("#startTimeDiv").html("<div id='message'></div>");
    $("#message").html("<p>Contact Form Submitted!</p>")
    .append("<p>We will be in touch soon.<br><? echo $unix; ?></p>");
    $.fancybox.close(); 
    }
    </script>

所以,任何帮助将不胜感激。请告诉我我做错了什么。

2 个答案:

答案 0 :(得分:0)

示范here致力于解决问题。它造成了另一个问题,但这是另一个问题。我相信这是你的演示,JFK,谢谢你。

答案 1 :(得分:-1)

$.ajax({
        type    : "POST",
        cache   : false,
        url     : "downTime.php?page=ajax",
        data    : $(this).serializeArray(),
        success : function(data) {

代替:

            $.fancybox(data);

<强>尝试

            $("#fancyboxdiv").fancybox(data);

        }
    });

其中fancyboxdiv是托管fancybox的元素的名称。

您将其他功能更改为

$("#fancyboxdiv").fancybox().close() 

等。 大多数JQuery UI组件需要一个元素作为其父元素进行处理,它通常会修改该元素向其添加/删除元素并更改CSS以提供所需的外观