2011-01-21 3 views
1

я начинаю FancyBox как коды внизFancybox - форма отправить и закрыть?

$('a.detail').click(function() { 
    $.fancybox({ 
     'width'   : 750, 
     'height'  : 520, 
     'title'   : 'EDIÇÃO DE SHOW', 
    'titlePosition' : 'inside', 
    'transitionIn' : 'fade', 
    'transitionOut' : 'none', 
    'href'   : 'templates/detail.php?id=<?php echo $tg_id['id'];?>', 
    'type'   : 'iframe' 
    }) 
    }) 

и в myfancy, я получил форму, чтобы обновить информацию о расписании.

$(function() { 

    $("form#comment").submit(function() { 

    var dat = $("#datepicker").val(); 
    var uf = $("#uf").val(); 
    var flr = $("input[name='flpic']:checked").val(); 
    var tit = $("#titulo").val(); 
    var mssg = $("#mensagem").val(); 
    var id = $("#id").val(); 

    if(BrowserDetect.browser == 'Explorer'){ 
    var nav = 'ie' 
    } else { 
    var nav = 'ot' 
    } 

    $.ajax({ 

      type: "POST", 
      url: "edit_agenda.php", 
      data: "id="+id+"&datepicker="+ dat+"&uf="+uf+"&fl="+flr+"&titulo="+tit+"&mensagem="+mssg+"&bro="+nav, 
      success: function(){ 

     $("#status").html("<img src='../images/1-0.gif' alt='Enviando' />"); 

    **???? Can I call some function to close this fancy here?** 

       } 

     }); 

     return false; 

    }); 

}); 

Мой вопрос:

После отправки этой формы, можно закрыть это фантазии в функции?

+0

Как это работает правильно? Fancybox не отображается автоматически, когда вы вызываете .fancybox, поэтому я чувствую, что у вас должен быть другой код, который вы не показываете? – Dobler

ответ

2

Вы можете закрыть его с помощью $.fancybox.close(). Ум читает the API.

+0

Хорошо спасибо. Я попробую. – Klauzito

+0

Дело в том, что мой fancybox не закрывается. Becouse это внутри iframe. – Klauzito

+3

«Внутри iframe use - parent. $. Fancybox.close();" –

-1

Попробуйте PHP-решение, если вы хотите, попробуйте простой переписать в javascript.

<?php 
$close = 1; 
if($close) { echo ' <body onunload="self.close()"> ' ;} 
?> 
2
$.ajax({ 
    type: "POST", 
    url: "edit_agenda.php", 
    data: "id="+id+"&datepicker="+ dat+"&uf="+uf+"&fl="+flr+"&titulo="+tit+"&mensagem="+mssg+"&bro="+nav, 
    success: function(){ 
    parent.$.fancybox.close(); 
    } 
}); 
+0

Можете ли вы добавить описание того, как этот код решает проблему. – Ren

0

в плавающем фрейме

<input name="submit" type="submit" value="close" onClick="$.fancybox.close();" /> 

также будет работать.

0

Используйте parent.$.fancybox.close(); в пределах Iframe.