0

我正在尝试使用一个文本字段创建一个基本表单。当用户在文本字段中输入代码时。然后当他们点击提交时,我会弹出一个带有 url + 他们的文本字段值的 iframe。

在我看来,一切都设置正确,但fancybox 加载屏幕永远不会消失,iframe 永远不会显示。

这是我目前不起作用的示例:

<form id="Form" onsubmit="fancybox.iframe('http://www.regonline.com/eventinfo.asp?eventid=' + document.Form.Event.value);return false;" autocomplete="off" style="height: 100%;" enctype="multipart/form-data" action="/Contact/tabid/59/Default.aspx" method="post" name="Form">
    <input type="text" name="Event">
</form>

<?PHP
    $eventid = $_POST['Event'];
    echo '<a class="fancybox fancybox.iframe" href="http://www.regonline.com/eventinfo.asp?eventid='. $eventid .'">Submit</a>';
?>

这确实有效,但它打开了另一个窗口,我无法让它与 fancybox iframe 一起工作:

<form id="Form" onsubmit="window.open('http://www.regonline.com/eventinfo.asp?eventid=' + document.Form.Event.value);return false;" autocomplete="off" style="height: 100%;" enctype="multipart/form-data" action="/Contact/tabid/59/Default.aspx" method="post" name="Form">
    <input type="text" name="Event">
    <br>
    <a class="event" onclick="window.open('http://www.regonline.com/eventinfo.asp?eventid=' + document.Form.Event.value);" href="#">Submit</a>
</form>

我敢肯定这对于正确的眼睛来说非常简单,要温柔;)

4

2 回答 2

0

您似乎缺少一些代码,或者您没有全部粘贴。

表单提交在哪里处理?我看到你有一个链接,href 是你想要的 iframe 值,但我不明白这一切之间的联系。

如果单击链接时它会填充名为 Event 的输入字段,那么您实际上是在使用整个 url 填充它。如果您随后使用该字段在 onsubmit 行中填充 iframe,那么您实际上是在将整个 url 再次附加到 url,最后创建一个这样的 url:http ://www.regonline.com/ eventinfo.asp?eventid=http://www.regonline.com/eventinfo.asp?eventid=SOME_ID_NUMBER

在没有看到所有代码的情况下,我推测您确实希望提交链接中的 href 仅包含 $eventid 值而不是整个 URL。

所以你的代码可能需要:

 echo '<a class="fancybox fancybox.iframe" href="'. $eventid .'">Submit</a>';
于 2013-08-23T16:18:44.763 回答
0

感谢您的帮助,这实际上是我一直在寻找的,并且不知何故我最终得到了它。再次感谢您的帮助

<form id="Form" autocomplete="off" style="height: 100%;" enctype="multipart/form-data" action="" method="post" name="Form">
                            <input type="text" name="Event">
                            <br>
                            <a id="event-link" class="event" href="#">Submit</a>
                        </form>
                        <script>
                        $('#event-link').click(function () {
                            $.fancybox({
                                type: 'iframe',
                                href: 'http://www.regonline.com/eventinfo.asp?eventid=' + document.Form.Event.value
                            });
                        });
                        </script>
于 2013-08-23T20:42:01.843 回答