Bonjour,
J'utilise la librairie javascript prototype pour faire de l'ajax. J'ai fais une fonction qui marche parfaitement sur Firefox et Webkit (Safari, Chrome ...) mais pas sur Internet Explorer 7.
Voilà la fonction:
var myAjax = new Ajax.Request(
"./ajax/getmessmod.php",
{
method: 'post',
parameters: "modid=1",
onSuccess: function(transport, json) {
var modform = new Element('form', {id: 'modform', action: scriptname, method: "post", enctype: "multipart/form-data", style: "display:none;margin-bottom:15px;"});
var modheight = $('post1').offsetHeight + 100 + "px";
var modtext = new Element('textarea', {name: "messagemod", style: "width:449px;height:"+modheight});
modtext.innerHTML = transport.responseText;
$('post1').innerHTML = "";
var modok = new Element('input', {id: "ok", type: "submit", value: "", style: "float:right;margin-left:0px;"});
var modhid = new Element('input', {type: "hidden", name: "modid", value: "1"});
$('post1').appendChild(modform);
modform.appendChild(modtext);
modform.appendChild(modok);
modform.appendChild(modhid);
Effect.BlindDown('modform');
},
});
Cette fonction appelle un fichier php qui renvoi du texte venant . Un formulaire est alors crée puis le texte récupérer avec l'ajax est insérer dans le formulaire afin de pouvoir modifier le texte venant de la base de donnée.
Je pense que le problème vient de l'interprétation du javascript par Internet Explorer et pas de Prototype mais je sais pas vraiment.
Configuration: Mac OS 10.5
Safari 4 Public Beta (Webkit 5528.16, r41755)