Le code du ci-dessous lorsque ça marche devrait me valider un document xml en prenant en compte son dtd, cela dit les liens qui doivent activé l'annulation ou la validation, ne marche pas... j'ai beau cherché mais je ne le trouve pas
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
<html>
	<head>	<title>Validateur de dtd</title>	</head>
	<script>
		var fenetreTransforme;
		var validate = document.getElementById("Val");
		var del = document.getElementById("Ann");
		function valider(){
			if((document.frmTransform.TxtXMLFileName.value).length == 0){
				alert("Nom de fichier Invalide");
				return;
			}
			var docXml = new ActiveXObject("Microsoft.XMLDOM");
			docXml.validateOnParse = true;
			docXml.load(document.frmTranform.TxtXMLFileName.value);
			var erreur = docXml.parseError;
			fenetreTransforme = window.open('transforme.html','_new','location=0,status=1,toolbar=0,menuBar=0,scrollBar=0,directories=0,resizable=0,width=600,height=600');
			if(erreur!=""){
				fenetreTransforme.document.write('<html><title>Validation par DTD</title><body><p><b>Erreur de Validation dans le document</b></p><br/>');
				fenetreTransforme.document.write('<b>Erreur url :</b>'+ erreur.url + '<br/>');
				fenetreTransforme.document.write('<b>Erreur ligne :</b>'+ erreur.line + '<br/>');
				fenetreTransforme.document.write('<b>Erreur position :</b>'+ erreur.linepos + '<br/>');
				fenetreTransforme.document.write('<b>Erreur raison :</b>'+ erreur.reason + '<br/>');
				fenetreTransforme.document.write('</body></html>');
			}
			else{
				fenetreTransforme.document.write('<html><title>Validation par DTD</title><body><p><b>Pas d erreur de Validation</b></p><br/>');
			}
		}
		function annuler(){
			document.frmTranform.TxtXMLFileName.value="";
			if(!(typeof fenetreTransforme == "undefined"))
				fenetreTransforme.close();
		}
		validate.onclick = valider();
		del.onclick = annuler();
	</script>
	<body bgcolor="#6699C" text="#FFFFFF">
		<p>&nbsp;</p>
		<p align="center"><font face="Verdana, Arial, Helvetica, sans-serif"><b><u>XML - Module de Validation par DTD</u></b></font></p>
		<p>&nbsp;</p>
		<form name="frmTransform" method="post" action="">
			<table width="75%" border="0" align="center">
				<tr>
					<td width="31%">
						<div align="center"><b>Entrer le nom du fichier XML</b></div>
					</td>
					<td width="18%">
						<input type="text" name="TxtXMLFileName"/>
						<font face="Verdana, Arial, Helvetica, sans-serif"></font>
					</td>
					<td width="10%">
						<font face="Verdana, Arial, Helvetica, sans-serif" size="2">
							<a href="#" id="Val">Valider</a>
						</font>
					</td>
					<td width="41%">
						<font face="Verdana, Arial, Helvetica, sans-serif" size="2">
							<a href="#" id="Ann">Annuler</a>
						</font>
					</td>
				</tr>
				<tr>
					<td width="31%"></td>
					<td colspan="3"></td>
				</tr>
				<tr>
					<td colspan="4">
						<div align="left"></div>
						<div align="left"></div>
					</td>
				</tr>
			</table>
			<p>&nbsp;</p>
			<p>&nbsp;</p>
			<p>&nbsp;</p>
			<p><font face="Verdana, Arial, Helvetica, sans-serif" size="2"> </font></p>
		</form>
	</body>
</html>
Je soupsonne sois mon parser, ou bien la manière de gérer les évènement pour aller les fonctions annuler() valider()