ファンシーボックスでフォームを開き、送信をクリックするといくつかの AJAX 関数がスローされます。ファンシーボックスを閉じた後、メインページのテーブルを更新するように要求します。
メイン ページの最初の読み込み後に初めて送信ボタンをクリックすると、すべてが機能しますが、フォームを呼び出して 2 回以上送信しようとすると、fancybox.close () が機能しません。これが私のコードです:
$('#bouton_ajout_terminal').fancybox({
href: 'http://www.myurl.com/emm/utilisateurs/form_ajout_mobile.php',
type: 'ajax',
wrapCSS: 'fancybox-custom',
closeClick:false,
openEffect:'elastic',
openSpeed:200,
closeEffect:'elastic',
closeSpeed:200,
helpers:{
overlay:{
css:{'background-color':'#eee'}
}
},
afterShow: function() {
$('#formulaire_ajout_mobiles').on('submit', function() {
$.ajax({
url: $(this).attr('action'),
type: $(this).attr('method'),
data: $(this).serialize(),
dataType: 'json',
success: function(json) {
if(json.reponse == 'ajout ok') {
refresh_terminaux(),
$.fancybox.close();
} else {
alert('Erreur : '+ json.reponse);
}
}
});
return false;
});
}
});
私の機能が動作していることを証明するフォームを送信するたびに、メインページのテーブルがうまく更新されるため、奇妙なことがあります。一度機能しないのはfancybox.close()だけです。