Я только изучаю XML и немного растерялся. До меня дошло, что для написания веб-сайта с использованием xml мне нужно создать несколько парных файлов xml и xsl, чтобы я мог ссылаться на другую страницу ... сделать что-нибудь с тех пор? Как использовать один XML-файл для хранения данных, которые я получаю, в нескольких таблицах стилей xsl? Является ли парный метод единственным способом?
Последние новости это только в ... Я понял, что для того, чтобы иметь несколько таблиц стилей с одним файлом XML, вам нужно использовать некоторый JavaScript !!! пойди разберись. ниже приведен код, вы можете вызвать этот код с помощью HTML-файла, который вы бы указали в своем меню. Убедитесь, что вы удалили связывающую декларацию таблицы стилей xsl вверху связанного xml-файла !!! И убедитесь, что вы используете сервер, чтобы отправлялись соответствующие HTTP-запросы. не будет работать локально при предварительном просмотре файла на жестком диске.
<html>
<head>
<script>
function loadXMLDoc(dname)
{
if (window.XMLHttpRequest)
{
xhttp=new XMLHttpRequest();
}
else
{
xhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xhttp.open("GET",dname,false);
xhttp.send("");
return xhttp.responseXML;
}
function displayResult()
{
xml=loadXMLDoc("cdcatalog.xml");
xsl=loadXMLDoc("cdcatalog.xsl");
// code for IE
if (window.ActiveXObject)
{
ex=xml.transformNode(xsl);
document.getElementById("example").innerHTML=ex;
}
// code for Mozilla, Firefox, Opera, etc.
else if (document.implementation && document.implementation.createDocument)
{
xsltProcessor=new XSLTProcessor();
xsltProcessor.importStylesheet(xsl);
resultDocument = xsltProcessor.transformToFragment(xml,document);
document.getElementById("example").appendChild(resultDocument);
}
}
</script>
</head>
<body onload="displayResult()">
<div id="example" />
</body>
</html>
После некоторого тестирования я узнал, что для правильной визуализации страницы вам нужно будет добавить информацию о скрипте в заголовок html-файла. Таблица стилей выглядит хорошо, но сценарии должны быть запущены до ввода данных, и я думаю, что они оба работают в одно и то же время и поэтому отменяют друг друга. ? есть мысли?