2013-05-16 1 views
0

Est-il possible d'obtenir toutes les valeurs d'un <form> et analyser à Mootools/JSON, pour que je puisse l'utiliser dans un XHR demande comme:Mootools itérer sur la forme et les valeurs grep pour XHR demande

var req = new Request.HTML({ 
method: 'post', 
url: 'xhr_request.php', 
data: { 
    formdata:  $('inputform').getdata(), 
    someotherdata: 'hello world' 
} 
}).send(); 

Pour le moment je n'ai que des champs de saisie de texte. Dans le json j'aime avoir le nom d'entrée ou l'ID comme clé pour la valeur. .: par exemple

<form id="inputform">  
<input type="text" id="name" name="name"/> 
<input type="text" id="company" name="company"/> 
</form> 

// Mootools scénario ci-dessus l'analyse syntaxique à ceci:

data: { 
'name' : 'John Doe', 
'company': 'Joeys LTD' 
}, 

Répondre

1

qui fonctionne automatiquement si vous passez le $('inputform') comme data: - il sérialisation pour vous.

+0

J'ai trouvé ceci entre-temps: var formstring = $ ('requestForm'). ToQueryString(). ParseQueryString(); var formjson = JSON.encode (chaîne de formulaire); c'est ce que tu voulais dire? http://stackoverflow.com/questions/2166042/how-to-convert-formate-data-to-object-using-mootools – abimelex

+1

@abimelex Vous compliquez les choses, il vous suffit de passer le '$ ('inputform')' la propriété 'data', et Mootools détectera qu'il s'agit d'un élément de formulaire et le sérialisera correctement * lui-même en interne *. –

+0

Merci pour le tipp, mais je mince cela ne fonctionnera pas dans mon cas, car je veux ajouter les mêmes données supplémentaires à la json. Ou y a-t-il un moyen de le faire? (J'ai mis à jour ma question pour la clarifier) – abimelex