2012-10-03 20 views
12

XML sayfanıza XML yerleştirme hakkında nasıl bir şey yazılır?HTML'ye XML gömme

Ben en iyi yaklaşım olacağını CDDATA kullanarak düşünüyordum ama HTML belgesinde sayfa yüklendiğinde hataları olsun.

<script><![CDATA[ ... ]]></script> 

Daha sonra JavaScript ile getirilmek üzere bir XML belgesini yerleştirmem gerekiyor. Bunu, kullanıcı açtığı zaman, internet erişimine sahip olamayacağı için yapmam gerek.

+0

CDATA (HTML böyle sınırlayıcılar yoktur) HTML içine XML değil, XML karakter verilerini gömme gömmek içindir. – BoltClock

+0

XML, herhangi bir yerde '' içermediği sürece, komut dosyalarını sadece CDATA bölümü içermeyecek şekilde yerleştirebilmeniz gerekir. Komut dosyasına özel bir yazı tipi verin, böylece JavaScript olarak yorumlanmayacaktır. –

+0

Bu yararlı olabilir: http://stackoverflow.com/questions/7816500/embed-xml-in-html-firefox-compatible – MikeB

cevap

25

XML, her yerde </script>'u içermediği sürece, komut dosyası etiketlerinin içine özel bir type özniteliği ekleyebilir (ve hiçbir CDATA bölümü içermez). İçeriği getirebilmek için komut dosyası etiketine id özniteliği verin. Burada öğretici göre

http://jsfiddle.net/hJuPs/

+0

Ayar türü = "text/xml" eksik olduğum numaraydı! Teşekkürler! – amcdnl

+0

o "text/xml" olmak zorunda olmadığını unutmayın @AustinMcDaniel ... sadece sahiptir * değil * "text/javascript" –

+2

olmak Ve ayrıca tip HTML5'teki varsayılan olarak "text/javascript" eğer dikkat atlanmış. –

1

ne dersiniz: kolayca javascript sonra geri alma için XML gömmek için sağlayacak

<script> 
    var xml = '<element> \ 
       <childElement attr="value" /> \ 
       </element>'; 
</script> 

.

-1

<script id="myxml" type="text/xmldata"> 
    <x> 
     <y z="foo"> 

     </y> 
    </x> 
</script>​ 

... 

<script> alert(document.getElementById('myxml').innerHTML);​ </script> 
, bir HTML belgesi içinde XML verilerini gömmek için 'xml' etiketi kullanabilirsiniz. Ancak, bu, XML verilerini tarayıcıda gizli olarak gösterir.

http://www.expertrating.com/courseware/XMLCourse/XML-Embedding-HTML-8.asp

+0

Buradaki bağlantıya göre, kullanımdan kaldırıldı. Ancak, bu siteyi daha önce hiç görmedim, bu yığın sorusunu görmeden önce etiketini duymuştum. http://www.html-5.com/changes/deprecated/xml-tag.html – jwp