Ajax выбирает часть DOM - PullRequest
       1

Ajax выбирает часть DOM

1 голос
/ 14 февраля 2011

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


    $.ajax({
        url: href,
          dataType: "html",
        success: function(data) {
            $(loaddiv).html($(data).find(selectdiv));
        }
    });

EDIT:

Я загрузил полный пример кода на http://jsfiddle.net/BHruska/x7mzR/.

Ответы [ 3 ]

1 голос
/ 14 февраля 2011

Попробуйте это:

$(loaddiv).load(href + ' ' + selectdiv);

Это должно только загрузить DOM на основе селектора.Вот лучший пример со страницы справки по загрузке jquery.

$('#result').load('ajax/test.html #container');

Приведенный выше фрагмент загружает html-файл в ajax / test.html внутри элемента с идентификатором #container в #result'element.

Надеюсь, это поможет.

Боб

0 голосов
/ 11 апреля 2011

Существует проблема с этой строкой:

$(loaddiv).html( $(data).find(selectdiv) );

Метод .html() ожидает ввод строки HTML, но $(data).find(selectDiv) выдает коллекцию элементов DOM. [1]

Метод .append(), однако, вероятно, то, что вы искали, так как он принимает коллекцию элементов для ввода.Итак, попробуйте это:

$(loaddiv)
    .empty()
    .append( $(data).find(selectdiv) );

.

[1] Если, конечно, selectDiv является строкой селектора.

0 голосов
/ 14 февраля 2011

Вам нужно поместить данные в некоторый элемент DOM, а затем найти в нем. Данные не будут в DOM и, следовательно, .find не будет работать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...