1

好的,所以过去四天我一直遇到问题,几个小时前,我想我可能已经解决了部分问题(fancybox example #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>

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

4

2 回答 2

0

这里的演示解决了这个问题。它产生了另一个问题,但那是另一个问题。我相信那是你的演示,JFK,所以谢谢你。

于 2013-03-26T20:19:00.160 回答
-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 以提供所需的外观

于 2013-03-23T02:28:53.600 回答