У меня есть список цитат в документе XML.Каждая цитата обернута так:
<Item>
<Quote>This is a quote!</Quote>
<Source>-- this is the Source of the Quote!</Source>
</Item>
Вот jQuery:
var html = '';
var tmpl = '<li class=""><p class="quote">__quote</p><p class="source">__source</p></li>';
$(quoteObj).find('Item').each(function(){
$that = $(this);
var _quote = $that.children('Quote').text();
var _source = $that.children('Source').text();
var qhtml = tmpl.replace('__quote', _quote).replace('__source', _source);
html += qhtml;
});
return html;
В конечном продукте все QUOTES
есть, а SOURCES
нет,Я не могу на всю жизнь понять, почему.Что прямо передо мной, что я не вижу?
ДОПОЛНИТЕЛЬНАЯ ИНФОРМАЦИЯ К ОТВЕТАМ. КОММЕНТАРИИ:
- XML сформирован правильно, и я изменил его выше.
- Я добавил строку
var tmpl
, чтобы показать, что я заменяю в цикле.__quote
заменяется, и по крайней мере __source
выполняется, так как второй <p>
пуст вместо того, чтобы содержать строку. - Я проверил фактический XML, возвращающийся извызов AJAX, и это все там, как и должно быть.
Мне кажется, это какая-то проблема с областью видимости и this
, или с действием .children()
метод, но я до сих пор не могу его найти.
ONE LAST NOTE:
Изменен регистр тега XML на Initial Caps, который находится в рассматриваемом документе.