bonjour,
voilà, j'aimerais modifier la fonction que je vous mets la dessous, de manière a pouvoir l'utiliser avec n'importe quel formulaire,
en précisant simplement l'id du formulaire dans l'appel de la fonction, et que la fonction prenne automatiquement tout les champs du formulaire.
mais, je ne m'en sors pas du tout cette fois ci,
si qqn peut m'aider :)
voici la fonction:
(il faudrait modifier la partie avec les "var" et la var data pour qu'automatiquement il y ait tout les champs du formulaire)
addoeuvre=function(){
tinyMCE.triggerSave();
var xhr_object = null;
if(window.XMLHttpRequest) // Firefox
xhr_object = new XMLHttpRequest();
else if(window.ActiveXObject) // Internet Explorer
xhr_object = new ActiveXObject("Microsoft.XMLHTTP");
else { // XMLHttpRequest non supporté par le navigateur
alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest...");
}
var method = "POST";
var filename = "worker/addoeuvre.php";
var ID = escape(document.getElementById('ID').value);
var meta_key = escape(document.getElementById('meta_key').value);
var meta_desc = escape(document.getElementById('meta_desc').value);
var titre = escape(document.getElementById('ftitre').value);
var cathegorie = escape(document.getElementById('cathegorie').value);
var page = escape(document.getElementById('page').value);
var imgs1 = escape(document.getElementById('imgs1').value);
var imgs2 = escape(document.getElementById('imgs2').value);
var imgs3 = escape(document.getElementById('imgs3').value);
var imgb1 = escape(document.getElementById('imgb1').value);
var imgb2 = escape(document.getElementById('imgb2').value);
var imgb3 = escape(document.getElementById('imgb3').value);
var description = escape(document.getElementById('description').value);
var information = escape(document.getElementById('information').value);
var infosearch = escape(document.getElementById('infosearch').value);
var data = null;
if(ID != "")
data = "ID="+ID+"&meta_key="+meta_key+"&meta_desc="+meta_desc+"&titre="+titre+"&cathegorie="+cathegorie+"&page="+page+"&imgs1="+imgs1+"&imgs2="+imgs2+"&imgs3="+imgs3+"&imgb1="+imgb1+"&imgb2="+imgb2+"&imgb3="+imgb3+"&description="+description+"&information="+information+"&infosearch="+infosearch;
il te suffit de mettre dans un tableau et de faire un
join de celui ci avec un & dans ton cas il est préférable de
récupérer les name le même exemple revu
<html>
<head>
</head>
<form name= "F_MAIN">
</form>
<script
type="text/javascript">
var O_Form = document.forms.F_MAIN;
var Tab =
[]; // le tableau des data
//-- parcours des elements for( var i =0; i <
O_Form.elements.length; i++){
var Obj = O_Form.elements[i];
//-- mise en tableau
Tab.push( Obj.tagName
+' =' +Obj.value);
}
//-- concatenation du tableau
avec des &
var szData = Tab.join('&');
alert(
szData);
</script>
merci de cette réponse rapide !
j'avais essayé de faire un for
mais sans succès
question :
si je fais :
var O_Form = document.forms.F_MAIN;
for( var i=0; i < O_Form.elements.length; i++){
var data= O_Form.elements[i].tagName+"="+Form.elements[i].value);
je pourais reprendre la suite du code normal avec le data?
sauf que je me doute que ca va pas marché, parce qu'il faudrait encore le & entres les différents groupes..
je ne sais pas pourquoi, j'ai jamais réussi a comprendre ces i< dd; i++ ...
Annadrill
Vous n’avez pas trouvé la réponse que vous recherchez ?