//******************************************
//DTD KIEZEN
//******************************************
function DTDselecteren()
{
switch(window.document.getElementById("keuzelijst").value)
{
case "strict":
inhoudtekstkeuzelijst='<?xml version ="1.0"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN""http://w3.org/1999/TR/xhtml1-strict.dtd"><html xmlns = "http://www.w3.org/1999/xhtml">';
break;
case "transitional":
inhoudtekstkeuzelijst='<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml">';
break;
case "frameset":
inhoudtekstkeuzelijst='<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd"><html xmlns="http://www.w3.org/1999/xhtml">';
break;
}
}
//*******************************************
//EINDE DTD KIEZEN
//*******************************************
Voor een schoolproject heb ik een nogal complex javascript geschreven waarvan deze functie als enige een fout geeft in de officiële validator van het w3c. Normaal zou een javascript al geen fout mogen geven omdat het in x-HTML Strict 1.0 tussen commentaar tags staat maar toch doet het dit.
De functie wordt geladen na het veranderen van een keuzelijstje. In dit keuzelijstje moet je tussen de 3 verschillende x-HTML DTDs kiezen. Deze worden later gebruikt om dynamisch een pagina aan te maken in javascript met de gekozen DTD.
Als fout krijg ik:
This is an unexpected token. The expected token is 'WHITESPACE'. Line 2, position 57.
De fout slaagt op de Strict DTD die gekozen wordt in de eerste case. Aangezien ook mijn document in de strict staat, denk ik dus niet dat dit toeval is. De validator werwart klaarblijkelijk de echte DTD met de DTD in de case die als string geladen wordt. Delete de eerste case en de fout verdwijnt.
Kan iemand mij met dit specialistisch probleempje helpen? De fout zou er maandag ten laatste moeten uit zijn aangezien dit werk dan ingediend moet worden. Dank aan alle probeerders!
DTD Probleem
- meon
- Administrator
- Berichten: 16609
- Lid geworden op: 18 feb 2003, 22:02
- Twitter: meon
- Locatie: Bree
- Uitgedeelde bedankjes: 564 keer
- Bedankt: 759 keer
- Contacteer:
Euh... volgens mij is dit een fout in de validator ...
Je zou via server-side scripting de validator kunnen foolen, maar dat is niet de bedoeling neem ik aan ...
Je zou via server-side scripting de validator kunnen foolen, maar dat is niet de bedoeling neem ik aan ...
Nope, de site is echt gemaakt om compleet clientside te werken. We mogen wel serverside gebruiken, alleen ken ik nog geen php/asp.
"We are the Borg. Lower your shields and surrender your ships. We will add your biological and technological distinctiveness to our own. Your culture will adapt to service us. Resistance is futile."
- meon
- Administrator
- Berichten: 16609
- Lid geworden op: 18 feb 2003, 22:02
- Twitter: meon
- Locatie: Bree
- Uitgedeelde bedankjes: 564 keer
- Bedankt: 759 keer
- Contacteer:
een beetje PHP:
Hiermee 'verberg' je dat stuk uit je pagina indien het via de validator gaat.
Foetelen noemen ze dat
Code: Selecteer alles
<? if (gethostbyaddr($_SERVER['REMOTE_ADDR']) != "lovejoy.w3.org") { ?>
[uw code die problemen geeft in de validator]
<? } ?>
Hiermee 'verberg' je dat stuk uit je pagina indien het via de validator gaat.
Foetelen noemen ze dat
-
- Elite Poster
- Berichten: 3868
- Lid geworden op: 20 maa 2004, 20:10
- Uitgedeelde bedankjes: 95 keer
- Bedankt: 48 keer
tprobleem is dat em nie mag foefelen eh ... mja zo kunde alle niet valid code gaan omzeilen (met javascript eventueel)
@ The Borg ik zou het niet weten
@ The Borg ik zou het niet weten
Ja, problem solved. Ik heb dat speciaal in een extern scriptje gezet en dan zaagt hij er niet meer over. Dit moet echt wel nen bug zijn in de w3c recommandatie ofwel een bug in de validator zelf. Hij denkt namelijk dat hij 2 maal dezelfde dtd leest. Maar deze staan in commentaar dus mag hij die normaal al niet lezen. Al wreed bedankt Meon en DitCh.
"We are the Borg. Lower your shields and surrender your ships. We will add your biological and technological distinctiveness to our own. Your culture will adapt to service us. Resistance is futile."