Dans mon projet, je développe une interface web pour l'appareil. L'heure et le nom de l'appareil sont mis à jour sur la page Web à l'aide d'AJAX.IE n'affiche pas le texte mis à jour par Javascript
Lors de la première exécution, lorsqu'une page Web est créée (mise à jour), la page est correctement affichée par IE8 mais à l'actualisation/révision, l'heure s'affiche correctement mais le nom du périphérique (qui change occasionnellement) est absent. J'utilise la propriété innerHTML pour mettre à jour le texte.
Je ne rencontre pas ce problème lorsque j'accède à des pages sur Google Chrome. J'ai également désactivé le cache en utilisant l'en-tête HTML. L'en-tête HTML est donné ci-dessous
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<meta http-equiv="content-type" content="text/html;charset=utf-8" />
<meta http-equiv="pragma" content="no-cache" />
<meta http-equiv="cache-control" content="no-cache" />
script:
function OnComplete (xmlDoc) {
/* ToDo: Add complete event here or remove method
xmlDoc contains the received XML Document */
try{
var txt="";
x = xmlDoc.getElementsByTagName("DateTime");
document.getElementById("idClock").innerHTML = x[0].firstChild.nodeValue;
x = xmlDoc.getElementsByTagName("TCOLOR");
document.getElementById("idClock").style.color = x[0].firstChild.nodeValue;
x = xmlDoc.getElementsByTagName("deviceNameType");
alert(x[0].firstChild.nodeValue);
document.getElementById("deviceName").innerHTML = x[0].firstChild.nodeValue;
x = xmlDoc.getElementsByTagName("ALARM");
var alarmImg = document.getElementById("idImgAlarm");
var value = x[0].firstChild.nodeValue;
switch(value){
case '0':
SetClassName(alarmImg, 'replace', 'hidden', 'inline');
break;
case '1':
alarmImg.src = 'Alarm.gif';
SetClassName(alarmImg, 'replace', 'inline', 'hidden');
break;
case '2':
alarmImg.src = 'Alarm_static.jpg';
alarmImg.className ="p4 pr10 f_r pointer inline";
break;
default:
alert("default");
break;
}
}catch(e){/*alert('ERROR\n'+ e);*/}
}
XML Exemple:
<?xml version="1.0" encoding="ISO-8859-1"?><rtc><DateTime>2010-12-03 13:01:39 (UTC)</DateTime><TCOLOR>#0</TCOLOR><deviceNameType>AA1J1Q01A1, MYDEVICE</deviceNameType><ALARM>1</ALARM></rtc>
L'alerte() fonctionne avec du chrome, mais pas IE. Comment puis-je résoudre ce problème dans Internet Explorer 8?
En-tête HTML s'il n'est pas affiché correctement: – Dhaval
Le doctype n'a probablement rien à voir avec cela. Veuillez indiquer le code JavaScript que vous utilisez. – PleaseStand
@Dhaval, je l'ai corrigé pour vous - vous devez mettre en surbrillance le "code" dans votre question et cliquez sur le bouton Code (avec 0 et 1 dessus). Ou indentez chaque ligne avec 4 espaces. –