Facebox открывается только один раз при первой отправке формы Jquery - PullRequest
0 голосов
/ 09 мая 2011

У меня есть страница панели инструментов, где пользователь может ввести код актива или идентификатор для поиска, и после нажатия кнопки поиска или нажатия кнопки ввода результат поиска отображается в модале Facebox. Все идет нормально. Однако, когда пользователь пытается выполнить второй поиск, модальный результат Facebox не открывается, несмотря на то, что JQuery POST происходит правильно и ответный HTML-код возвращается так, как и должно быть. Моя функция, которая связывается с функцией отправки и выполняет ajax POST, выглядит следующим образом:

  // attach a submit handler to the form
  $("#astsrch").submit(function(event) {    
    //$('a[rel*=facebox]').facebox();                                       
    // stop form from submitting normally
    event.preventDefault(); 

    // get some values from elements on the page:
    var $form = $( this ),
        term = $form.find( 'input[name="assetsearch"]' ).val(),
        url = $form.attr( 'action' );

    // Send the data using post and put the results in a div
    $.post( url, { assetsearch: term } ,
      function( data ) {
          $.facebox(data);
      }
    );
  });

Кажется, что что-то происходит при нажатии кнопки закрытия Facebox, что препятствует открытию дальнейшего Facebox, когда форма поиска отправляется с помощью вышеуказанной функции.

1 Ответ

1 голос
/ 07 июня 2011

посмотрите на этот пост.это похоже на твой.попробуйте привязать событие нажатия на кнопку отправки.

что-то вроде:

$(document).ready(function() {
    $('#astsrch').live('click', function() {
        $.get($(this).attr("action"), function(data){
            $.facebox(data);
        });
    }); 
});

удачи!

...