編集:最近、この問題は実際には 2 つの別個の問題であることを知りました: 1) スクリプトを使用して必要な分岐点で親要素を閉じること、および 2) 必要な関数がすべて呼び出され、正しい順序で完了することを確認すること。以下に含めた親要素を閉じるための2つの方法を見つけました。2番目の問題はここで対処されています:phpでjQuery関数を呼び出す(またはjavascriptを変更してphpが残りのコードを実行する)
元の質問
フォームが検証されて送信されたら呼び出す必要がある2つの関数がありますが、これらの関数をスクリプトに挿入しても、別の関数が完了するのを防ぐことができませんでした(javascriptまたはphp)。
これらの関数を統合して親アイテム (iframe と新しいユーザーへの通知) をスクリプトに閉じたり、フォームが検証されて送信された後に php から呼び出したりするにはどうすればよいですか?
新機能:
parent.close_field('notice');
parent.$.fancybox.close();
既存の Javascript
var $custInfo = $("#customer_info");
$(document).ready(function () {
var validator = $custInfo.validate({
rules: {.. },
messages: {..},
errorLabelContainer: "#messageBox",
submitHandler: function () {
$custInfo.ajaxSubmit({
});
}
});
$custInfo.find("input[name=gender]").change(function () {
if ($(this).val() == "male") {
$custInfo.submit();
}
});
});
私は Fancybox2 を使用しています。フォームタグに属性を追加する必要がある他の方法も試しましたが、それらはスクリプトを完全に回避します。