Voici un code (en utilisant jquery) que j'utilise pour télécharger un fichier html à partir duquel j'extrais une table et son contenu.IE6: Télécharger le html sans exécuter le javascript contenu, en ISO-8859-1 jeu de caractères
var url = $('#url').val(); // url to access
if ($.browser.msie && $.browser.version.substr(0,1)<7) {
var frame = $('<iframe/>').css('display', 'none').attr('src', url);
frame.appendTo('body')
.load(function() {
var data = frame.contents()[0].firstChild.innerHTML;
frame.remove; // kill the frame
extractReport(data); // extract the data table
}); // load
}
else {
$.ajaxSetup({
'beforeSend' : function(xhr) {
xhr.overrideMimeType('text/html; charset=ISO-8859-1');
}
}); // ajaxSetup
$.ajax(
{
async:false,
url:url,
error : function(XMLHttpRequest, textStatus, errorThrown) {
alert(textStatus);
},
success:
function(data, textStatus, XMLHttpRequest) {
extractReport(data);
}
}); // ajax
} //else
Mon problème est que lorsque j'utilise un objet XMLHttpRequest actif-X dans IE6, le responseText contient des déchets pour les caractères français. J'ai réussi à contourner cela avec un iframe (ie6 ne supporte pas overrideMimeType que j'utilise pour Firefox). Mais maintenant le javascript contenu dans le cadre html est exécuté. Existe-t-il un moyen pour IE6 de télécharger mon fichier html dans le bon jeu de caractères sans exécuter le javascript?
Remarque: Je ne suis pas autorisé à modifier la configuration Apache pour forcer un jeu de caractères ISO-8859-1.
Mon idée: Le html peut-il être téléchargé en texte brut avec un ActiveX? Le seul que je connaisse est ActiveXObject ("Msxml2.XMLHTTP.6.0") et il échoue.
Bon !! était le moyen de le faire. Un gros grand merci. –
À utiliser avec retenue. Si nous parlons d'une application intranet d'entreprise où les paramètres sont assez cohérents, cela peut fonctionner, mais ce n'est pas vraiment adapté à l'Internet ouvert. – bobince