0

我用fancybox打开一个表单,当我点击提交时我抛出了一些AJAX函数。我请求在我的主页上刷新一个表格,并在我关闭fancybox 之后。

当我在第一次加载主页后第一次单击提交按钮时,一切正常,但如果我尝试调用我的表单并提交两次或更多次,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()。

4

0 回答 0