construire objet JSON en javascript pour écrire à php

voix
0

J'ai un groupe de boutons radio sous une forme, je dois transmettre les valeurs des boutons de radion sélectionnés à un script php. Je dois donc construire un objet JSON pour poster.

J'ai essayé avec ce code, mais je ne suis pas sûr. S'il vous plaît quelqu'un pourrait me aider.

result = [];
for (i=0; i<document.getElementsByTagName('input').length; i++) {
    if (document.getElementsByTagName('input').item(i).checked) {
        s = document.getElementsByTagName('input').item(i).name;
        r = document.getElementsByTagName('input').item(i).value;
        result.push({id:s, va:r});
}
Créé 17/08/2010 à 16:46
source utilisateur
Dans d'autres langues...                            


2 réponses

voix
1

Si les namevaleurs sont uniques, juste construire une chaîne comme ceci:

var result = '', inputs = document.getElementsByTagName('input');

for ( var i = inputs.length; i--; ) {
    if ( inputs[i].checked ) {
        result+= ( inputs[i].name + '=' + inputs[i].value + '&' );
    }
}

Démo en direct: http://jsfiddle.net/TTvkb/

Ensuite, il suffit d'envoyer la chaîne dans votre demande ajax.

Créé 17/08/2010 à 16:53
source utilisateur

voix
0

En utilisant jquery, ce qui suit est une autre façon de le faire:

var postData = {}, inputs = document.getElementsByTagName('input');

for ( var i = inputs.length; i--; ) {
    if ( inputs[i].checked ) {
        postData[inputs[i].name] = inputs[i].value;
    }
}

$.post('/post.php', postData, function(retData){
  // handle response
}); 
Créé 17/08/2010 à 20:00
source utilisateur

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more