2010-06-14 4 views
1

Я не могу понять эту проблему. Я пытаюсь получить xml для рендеринга html-тегов. Проблема, которую я использую .text(), будет отображать, но не распознавать любые теги html. Если я использую .html() или просто вызываю var long2 = $ (this) .find ('long'); ничего не появится в Safari или IE.jquery XML .html() вместо .text() не отображается?

У меня есть пункт XML У меня есть текст здесь нужно смелых тегов или тегов поэтому мне нужно HTML-теги в XML, чтобы быть признанным.

Код:

$(document).ready(function(){ 
     $.ajax({ 
      type: "GET", 
      url: "xml/sites.xml", 
      dataType: "xml", 
      success: function(xml) { 
       $(xml).find('site').each(function(){ 
        var id = $(this).attr('id'); 
        var title = $(this).find('title').text(); 
        var Class = $(this).find('class').text(); 
        $('<div class="'+Class+'" id="link_'+id+'"></div>').html('<p class="title">'+title+'</p>').appendTo('#page-wrap'); 
        $(this).find('desc').each(function(){ 
         var url = $(this).find('url').text(); 
         var long = $(this).find('long').text(); 
         $('<div class="long"></div>').html(long).appendTo('#link_'+id); 
         $('#link_'+id).append('<a href="http://'+url+'">'+url+'</a>'); 
          var long2 = $(this).find('long'); 
          $('<div class="long2"></div>').html(long2).appendTo('#link_'+id); 

        }); 
       }); 
      } 
     }); 

ответ

2

.html() не работает с XML-документами. Вы должны обернуть содержимое HTML в файле XML <![CDATA[your code here]]>.

+0

это сработало очень хорошо ....... Спасибо! – Xtian

0

Однажды я столкнулся с этой проблемой при работе с некоторыми материалами xslt. По-видимому, в webkit и некоторых версиях IE вы не можете разобрать html, который не соответствует вашему doctype. Так как узел не будет доступен для jquery. ОДНАКО, есть решение, которое вы можете сделать для запроса элемента с помощью атрибута nodename $('[nodeName=long]',xml)

+0

Это похоже на решение, которое я искал, теперь мне просто нужно выяснить, как это сделать :) – Xtian

Смежные вопросы