powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / Я новичек, помогите с XML
16 сообщений из 16, страница 1 из 1
Я новичек, помогите с XML
    #35617809
Clyde
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Я нуб в ХТМЛе, но мне оч нужна помощь... Есть

1) HTML стрница (предсталяет из себя таблицу)
2) XML файл с данными
3) 3 файла XSL для 3 типов сортировки данных в таблице

На хостинге Ukoz залил на свой сайт ХМЛ и ХСЛ файлы, ХТМЛ код странички вставил новую страницу. Но таблица естественно не рисуется, т.к. ХТМЛ страница "не знает" где лежат файлы ХМЛ и ХСЛ. Когда все файлы лежат на компе в одной папке - все работает. Вот кусок ХТМЛ кода, подскажите как "научить" страничку видеть ХМЛ файлы?

<html>
<script>
var source;
var style;
var sourceURL;
var styleURL;
var baseXML;
var baseXML1;

// ----- Scripts to control XSL Processing ------
function update()
{
if (style.documentElement && source.documentElement)
{
display(source.transformNode(style));
}
}

function changeXMLXSL(xmldoc,xsldoc)
{
source = new ActiveXObject("Microsoft.XMLDOM");
source.async = false;
style = new ActiveXObject("Microsoft.XMLDOM");
style.async = false;
sourceURL = xmldoc;
source.load(sourceURL);
styleURL = xsldoc;
style.load(styleURL);
update();
}
function changeXSL(xsldoc)
{
sourceURL = xsldoc;
source.load(sourceURL);
update();
}

function display(xslHTML)
{
document.all.item("xslresult").innerHTML = xslHTML;
}
function newwin(url, name)
{
window.open(url, name, "toolbar=0");
}
function viewNode(Index)
{
xsldoc = new ActiveXObject("Microsoft.XMLDOM");
xmldoc = new ActiveXObject("Microsoft.XMLDOM");
xsldoc.async = false;
xmldoc.async = false;
xsldoc.load("Experts_0.xsl");
nodeStr=source.documentElement.childNodes.item(Index-1).xml;
xmldoc.loadXML(nodeStr);
// alert (xmldoc.documentElement.xml);
if (xmldoc.documentElement && xsldoc.documentElement)
{
win=window.open("nodeInfo.html", "view", "toolbar=0");
win.document.all.item("result").innerHTML = xmldoc.transformNode(xsldoc);
}
}
//----------------------onMouseOver="parent.contents.over(this)" onMouseOut="parent.contents.out(this)"

function SelectSort(SortParam)
{
switch(SortParam)
{
case "sort1" : place = 1; changeXMLXSL("Experts.xml", "Experts_1.xsl"); break;
case "sort2" : place = 2; changeXMLXSL("Experts.xml", "Experts_2.xsl"); break;
case "sort3" : place = 3; changeXMLXSL("Experts.xml", "Experts_3.xsl"); break;
}
}

</script>
...
Рейтинг: 0 / 0
Я новичек, помогите с XML
    #35619091
Фотография _Vasilisk_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1) Вы должны передавать полные урлы, а не имена файлов. Т.е. что-то типа
Код: plaintext
case "sort1" : place =  1 ; changeXMLXSL("http://www.Ukoz.com/Experts.xml", "http://www.Ukoz.com/Experts_1.xsl"); break;
2) Ваш код будет работать только в IE, причем с полностью отрубленой системой безопасности

С уважением, Vasilisk
...
Рейтинг: 0 / 0
Я новичек, помогите с XML
    #35619180
Clyde
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ой виноват торопился... Кусо кода забыл... Как раз тот что Вы указали..

<html>
<script>
var source;
var style;
var sourceURL;
var styleURL;
var baseXML;
var baseXML1;

// ----- Scripts to control XSL Processing ------
function update()
{
if (style.documentElement && source.documentElement)
{
display(source.transformNode(style));
}
}

function changeXMLXSL(xmldoc,xsldoc)
{
source = new ActiveXObject("Microsoft.XMLDOM");
source.async = false;
style = new ActiveXObject("Microsoft.XMLDOM");
style.async = false;
sourceURL = xmldoc;
source.load(sourceURL);
styleURL = xsldoc;
style.load(styleURL);
update();
}
function changeXSL(xsldoc)
{
sourceURL = xsldoc;
source.load(sourceURL);
update();
}

function display(xslHTML)
{
document.all.item("xslresult").innerHTML = xslHTML;
}
function newwin(url, name)
{
window.open(url, name, "toolbar=0");
}
function viewNode(Index)
{
xsldoc = new ActiveXObject("Microsoft.XMLDOM");
xmldoc = new ActiveXObject("Microsoft.XMLDOM");
xsldoc.async = false;
xmldoc.async = false;
xsldoc.load("Experts_0.xsl");
nodeStr=source.documentElement.childNodes.item(Index-1).xml;
xmldoc.loadXML(nodeStr);
// alert (xmldoc.documentElement.xml);
if (xmldoc.documentElement && xsldoc.documentElement)
{
win=window.open("nodeInfo.html", "view", "toolbar=0");
win.document.all.item("result").innerHTML = xmldoc.transformNode(xsldoc);
}
}
//----------------------onMouseOver="parent.contents.over(this)" onMouseOut="parent.contents.out(this)"

function SelectSort(SortParam)
{
switch(SortParam)
{
case "sort1" : place = 1; changeXMLXSL("Experts.xml", "Experts_1.xsl"); break;
case "sort2" : place = 2; changeXMLXSL("Experts.xml", "Experts_2.xsl"); break;
case "sort3" : place = 3; changeXMLXSL("Experts.xml", "Experts_3.xsl"); break;
}
}

</script>


<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<title></title>
<link href="..\controls\styles.css" rel="STYLESHEET" type="text/css">
</head>

<body onLoad="changeXMLXSL("Experts.xml","Experts_1.xsl");">

<!--#include virtual="footer.html"-->

<table bgcolor="#6DABCD" border="0" cellspacing="1" width="100%" height="15%">
<tr>
<td align="right" width="40%" style="COLOR: rgb(0,0,0); FONT-SIZE: 10 pt"><H3>Отсортировать по </H3></td>
<td align="left" width="50%" height="20"><form>
<div align="left"><left><p><font size="2"><select size="1"
onchange="SelectSort(options[this.selectedIndex].value)"
style="COLOR: rgb(0,0,0); FONT-SIZE: 10 pt">
<option value="sort1">Названию</option>
<option value="sort2">Жанру</option>
<option value="sort3">Длительности</option>
</select><b> </b></font></p>
</center></div>
</form>
</td>
</tr>
</table>

<div id="xslresult"><!-- resulting HTML will be inserted here -->
</div><div id="xsldebug"><!-- resulting HTML source will be inserted here -->
</div>
</body>
</html>








То есть в функции

function SelectSort(SortParam)
{
switch(SortParam)
{
case "sort1" : place = 1; changeXMLXSL("Experts.xml", "Experts_1.xsl"); break;
case "sort2" : place = 2; changeXMLXSL("Experts.xml", "Experts_2.xsl"); break;
case "sort3" : place = 3; changeXMLXSL("Experts.xml", "Experts_3.xsl"); break;
}
}

надо просто прописать УРЛы закачанных файлов... так?


з.ы.
Сейчас попробую спасибо большое
...
Рейтинг: 0 / 0
Я новичек, помогите с XML
    #35619188
CLyde
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Сделал все в соотвествии с указанием
К сожалению почему то все равно страница отказывается отображать ХМЛ таблицы(((
...
Рейтинг: 0 / 0
Я новичек, помогите с XML
    #35621662
Фотография _Vasilisk_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Почему? Какую ошибку пишет?
И еще раз подчеркну
_Vasilisk_Ваш код будет работать только в IE, причем с полностью отрубленой системой безопасности

С уважением, Vasilisk
...
Рейтинг: 0 / 0
Я новичек, помогите с XML
    #35630614
Clyde
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ошибки нет, просто не загружаются данные в табл. из ХМЛ файла.

Я указываю пути к ХМЛ и ХСЛ файлам в коде страницы, но есть нюанс. Таблица не загружается если ХМЛ файл находится в интеренете, а не локалхосте (то есть у меня на компьютере).

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

В итоге страничка "может" брать ХСЛ из интернета, но "не может" брать оттуда ХМЛ.
...
Рейтинг: 0 / 0
Я новичек, помогите с XML
    #35631284
Фотография _Vasilisk_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ClydeОшибки нет, просто не загружаются данные в табл. из ХМЛ файла.
Или ошибка есть, но Вы не в состоянии ее прочитать, либо все работает
...
Рейтинг: 0 / 0
Я новичек, помогите с XML
    #35631374
clyde
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вероятно. А каким образом ее можно отловить. К сожалению я имею представление о дебаггинге только языках типа С++, как отлавливать ошибки в ХМЛ я не в курсе...
...
Рейтинг: 0 / 0
Я новичек, помогите с XML
    #35631579
Фотография _Vasilisk_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alert()

С уважением, Vasilisk
...
Рейтинг: 0 / 0
Я новичек, помогите с XML
    #35641267
nya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
nya
Гость
_Vasilisk_причем с полностью отрубленой системой безопасностис чего бы вдруг?
...
Рейтинг: 0 / 0
Я новичек, помогите с XML
    #35641415
Фотография _Vasilisk_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nya_Vasilisk_причем с полностью отрубленой системой безопасностис чего бы вдруг?Проверьте
...
Рейтинг: 0 / 0
Я новичек, помогите с XML
    #35643927
maXmo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
проверил, всё пашет. С чего бы ему не работать?
...
Рейтинг: 0 / 0
Я новичек, помогите с XML
    #35645242
Фотография _Vasilisk_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maXmoпроверил, всё пашет. С чего бы ему не работать?
С удаленного сервера? Microsoft не очень жалует, когда JS с удаленного сервера начинает на клиенте создавать ActiveX
...
Рейтинг: 0 / 0
Я новичек, помогите с XML
    #35646448
maXmo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_Vasilisk_С удаленного сервера? Microsoft не очень жалует, когда JS с удаленного сервера начинает на клиенте создавать ActiveXЭто кто такую новость придумал? То есть аякс осёл органически не переваривает?
...
Рейтинг: 0 / 0
Я новичек, помогите с XML
    #35647980
Фотография _Vasilisk_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maXmoЭто кто такую новость придумал? То есть аякс осёл органически не переваривает?Блин! А ведь точно. Что-то я гоню :). Для ActiveX там существуют разные уровни доступа. С XMLDOMDocument действительно проблем вроде нет. А с FileSystemObject IE начинает посылать

В любом случае конструкция
Код: plaintext
new ActiveXObject("...");
IE only
...
Рейтинг: 0 / 0
Я новичек, помогите с XML
    #35648786
maXmo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_Vasilisk_А с FileSystemObject IE начинает посылатьясен пень
...
Рейтинг: 0 / 0
16 сообщений из 16, страница 1 из 1
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / Я новичек, помогите с XML
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]