0

Fancybox を使用して検索フォームのポップアップをトリガーし、フォームは Javascript 検証を使用してチェックおよび送信します。私が抱えている問題は、Fancybox 画面を閉じて関数を実行できないことです。現時点で使用しているコードは次のとおりです。

<form id="searchForm" method="post" action="<?php echo $search; ?>.php?type=rad" onsubmit="javascript:parent.jQuery.fancybox.close();">

$('#enterButton').click(function()
        {
        if(searchok == 1)
        {           
            $('.searchValidation').addClass("sending");
            $("#searchForm").submit();
        }
        else
        {
        $('.searchValidation').addClass("validationError");
        }
        return false;
        });

ファンシーボックスウィンドウをsubmit()で閉じるにはどうすればよいですか?それでも親ウィンドウでフォーム関数を効果的に実行できますか?

4

1 に答える 1

2

#enterButtonsubmitボタンであると仮定すると、

parent.jQuery.fancybox.close();

検証関数内。私は次のようなことを提案します:

$('#enterButton').click(function()
        {
        if(searchok == 1)
        {           
            $('.searchValidation').addClass("sending");
            $("#searchForm").submit();
            parent.jQuery.fancybox.close();
        }
        else
        {
        $('.searchValidation').addClass("validationError");
        }
        return false;
        });

ただしparent.jQuery.fancybox.close();、 内で使用する場合にのみ使用する必要がありますiframe。あなたはそれを置き換えることができますjQuery.fancybox.close();

確認できるリファレンスは次のとおりです。parent.jQuery.fancybox.close(); Fancybox 内から Fancybox を 1 回だけ閉じます

于 2013-10-19T10:26:15.170 に答える