Использование jQUery hide () для вновь созданных элементов DOM - PullRequest
0 голосов
/ 14 января 2010

Я относительно новичок в jQuery. У меня есть приложение, которое отображает список элементов контента из базы данных в таблице.

Если я нажму на ссылку заголовка страницы, она загрузит страницу для редактирования во вкладке (щелчок по вкладке позволяет мне просмотреть эту форму для редактирования).

Моя проблема в том, что при использовании .load и создании html внутри пустого div мой css, который ранее был скрыт jQuery, больше не скрывается в этой новой форме.

Например, на той же странице у меня есть div с ошибкой класса. Это скрыто. Я щелкаю заголовок для редактирования, страница загружается в пустой div, и div с ошибкой как класс не скрываются.

Есть ли способ обойти эти элементы, чтобы скрыть эти элементы?

1 Ответ

1 голос
/ 17 января 2010

Вот код, который я всегда использую при загрузке контента с другого URL в раздел текущей страницы:

jQuery(function($){
  $("#edit").click(function(){
    //display loading message in target div, it's better have animation gif
    $('#target').html('<img src="PATH/loading.gif" alt="" /> Loading edit form...');
    //request the edit form using AJAX
    $.get(EDIT_FORM_URL,
      {},
      function(data){
        //display data to target div
        $('#target').html(data);
        //if the error div still displayed, do this
        $(".error").hide();
      });
  });
});

Я никогда не использую .load. Я предпочитаю использовать $.get и $.post вместо этого для большего контроля, но не так сложно, как $.ajax.

Надеюсь, это поможет. Если вы все еще получаете странный результат, опубликуйте код или URL здесь, чтобы другие члены SO могли помочь вам более точно.

...