0

我有在触发 ajax 时添加到 DOM 中的 HTML 内容。我想在成功响应时关闭灯箱,但它没有关闭。

$(document).on("click", ".enquiry_form_submit" ,function(){
  var str = $("form#new_enquiry").serialize();
  $.ajax({
    type: "POST",
    url: "/enquiries",
    data: str,
    success: function(data){
      $('#enquiry-form').trigger('close');
      alert("test");
      $('#enquiry-form-submitted-info').lightbox_me({
        centered: true, 
        closeClick: true,
        closeEsc:   false,
        onLoad: function() { 
          $("#enq-form_submit-info").html(data)
        }
      });
    }
  });
  return false
});

trigger('close')不是在这里工作

enquiry_form是灯箱

4

2 回答 2

0
$('#enquiry-form').trigger('close');

您正在尝试调用查询表单的关闭方法,这是错误的。

你必须调用类似的东西

$('.close').click();

如果关闭链接有名为 close 的类

于 2013-10-02T16:20:04.387 回答
0

如何关闭 jquery 灯箱

转到编写它的人的源代码,那里有一个基本示例:

http://buckwilson.me/lightboxme/

如果你这样定义你的灯箱:

$('#my_lightbox').lightbox_me({
      centered: true,
      onLoad: function() {
        //statements to configure how the lightbox looks
      }
});

然后你可以像这样关闭它:

$('#my_lightbox').on('click', function(){
  $('#my_lightbox').trigger('close');
});

因此,您正在使用 jquery 捕获灯箱本身的点击事件。您正在该事件上运行一个函数。然后你得到灯箱打开的 id,然后告诉灯箱自行关闭。您可以将其与任何事件挂钩。

于 2014-02-12T21:03:55.693 回答