在XSLT中加载带有javascript的xml文件
我被这件事难住了。我有一个XSLT文件,它使用XML文件从中检索数据。 在这个XSLT文件中,还有一个javascript。它的目的是为XSLT中的“for each”语句创建计数器 现在,我需要向javascript添加一个功能,从XML文件中获取特定条目。 我将在这里粘贴xml的一部分,以便进一步解释在XSLT中加载带有javascript的xml文件,javascript,xml,xslt,extract,Javascript,Xml,Xslt,Extract,我被这件事难住了。我有一个XSLT文件,它使用XML文件从中检索数据。 在这个XSLT文件中,还有一个javascript。它的目的是为XSLT中的“for each”语句创建计数器 现在,我需要向javascript添加一个功能,从XML文件中获取特定条目。 我将在这里粘贴xml的一部分,以便进一步解释 <ROW> <Date>03-12-2013</Date> <School>SvR</School> <
<ROW>
<Date>03-12-2013</Date>
<School>SvR</School>
<Locale>B1.04</Locale>
<Class>1236VUGK16</Class>
<Time>09:00-16:00</Time>
</ROW>
03-12-2013
SvR
B1.04
1236VUGK16
09:00-16:00
我需要从“日期”获取数据。但我不知道如何用javascript加载xml文件来实现这一点。我发现一些html代码告诉我如何xmlDoc.load
可以做到这一点,但它不能做到。它会给我一个语法错误。这是因为它在XSLT中吗?我怎样才能实现我想要的呢?你需要4件事
<?xml version="1.0" encoding="UTF-8"?>
<events>
<ROW>
<Date>03-12-2013</Date>
<School>SvR</School>
<Locale>B1.04</Locale>
<Class>1236VUGK16</Class>
<Time>09:00-16:00</Time>
</ROW>
</events>
第3部分:
function Event(date)
{
this.date = date;
}
//funciton to charge XMLElements
function ChargeXMLElements()
{
try
{
xmlDoc=OpenFile("data.xml");
eventosXML=xmlDoc.getElementsByTagName('ROW');
if (eventosXML.length>0)
{
eventos=new Array(); //clase con los datos cargados
}
for(var i=0; i< eventosXML.length; i++)
{
xmlEvento=eventosXML[i];
fecha=xmlEvento.getElementsByTagName("DATE")[0].firstChild.nodeValue;
evento = new Evento(fecha);
eventos.push(evento);
}
return eventos;
}
catch(e)
{
alert("Error on the load data");
}
}
//show information take on previously function, and show on a table (with only 1 column)
function showinformation()
{
var tr;
var td;
var tabla;
var l=0;
ev= CargarXMLEventos();
auxUnEven=ev.pop();
tabla=document.getElementById("datos");
while (auxUnEven!=undefined)
{
tr=tabla.insertRow(l);
//creamos las columnas de la tabla
td=tr.insertCell(0);
td.innerHTML=auxUnEven.date;
/*td=tr.insertCell(1);
td.innerHTML=auxUnEven.hora;
td=tr.insertCell(2);
td.innerHTML=auxUnEven.comentario; */ //if you need more columns
l++;
auxUnEven=ev.pop();
}
if (l==0)
{
tabla=document.getElementById("datos");
tr=tabla.insertRow(l);
td=tr.insertCell(0);
td.innerHTML=" dont have events ";
}
}
功能事件(日期)
{
this.date=日期;
}
//充电元件的功能
函数ChargeXMLElements()
{
尝试
{
xmlDoc=OpenFile(“data.xml”);
eventosXML=xmlDoc.getElementsByTagName('ROW');
if(eventosXML.length>0)
{
eventos=new Array();//clase con los datos cargados
}
for(var i=0;i
第4部分:
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>example XML</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script type="text/javascript" src="filejs.js"></script>
<script type="text/javascript" src="Openxml.js"></script>
</head>
<body>
<table id="datos">
<script type="text/javascript">
showinformation();
</script>
</table>
</body>
</html>
示例XML
showinformation();
我认为这是功能性的,但我不知道。我在这里看到信息:(西班牙语,对不起)要在Javascript中解析XML,请参见以下问题:
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>example XML</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script type="text/javascript" src="filejs.js"></script>
<script type="text/javascript" src="Openxml.js"></script>
</head>
<body>
<table id="datos">
<script type="text/javascript">
showinformation();
</script>
</table>
</body>
</html>