Синтаксический анализ RSS-канала с помощью jfeed не выполняется только для некоторых полей.

Я использую последнюю версию jFeed с последней версией jQuery. Я знаю, что jFeed довольно устарел и больше не поддерживается, но Firefox, похоже, является единственным браузером, у которого есть проблема с парсингом RSS-канала с помощью этой настройки. Я изменил jFeed, чтобы получить поле 'date', которое находится в узле XML "dc:date". Единственное, о чем я могу думать, это то, что у firefox есть проблема из-за точки с запятой. (Все остальные поля работают нормально и в них нет этого символа).

Я обновил прототип jFeed, включив в него поле даты и измененную часть в jFeed, которая прекрасно разбирается во всем, кроме firefox, теперь выглядит так:

c.date = jQuery (this).find ("date"). eq (0).text ();

Не выдается никаких ошибок, а просто возвращается нулевое значение.

3 ответа

Решение

Вам нужно сбежать : там с \\ так как это зарезервированный символ для jQuery.

Смотрите документы по селекторам,

Если вы хотите использовать любой из метасимволов (#;&,.+*~':"!^$=>|/@) В качестве литеральной части имени, вы должны экранировать символ двумя обратными слешами: \\, Например, если у вас есть вход с name="names[]"Вы можете использовать селектор $("input[name=names\\[\\]]"),

Пытаться,

jQuery(this).find("dc\\:date")

Полный ответ, основанный на предложенной ранее теме Jag Bhandal...

$(this).find('[nodeName=dc\\:date]').text();

Вы должны попробовать прочитать эту тему. Он охватывает синтаксис namaspace. Chrome fix

Другие вопросы по тегам