J'ai un formulaire de contact assez standard qui utilise un cfc pour le traitement maintenant. Je veux utiliser .post pour les utilisateurs qui ont javascript activé. J'ai créé un tableau avec jQuery des éléments de formulaire et je veux passer cela au même CFC (sans modifier le CFC) mais je ne suis pas sûr de savoir comment le faire. Fondamentalement, je veux passer quelque chose appelé 'formData' comme un argument à la CFC (comme je le fais avec juste le code côté serveur de base), puis l'analyser dans le CFC. À l'heure actuelle, je n'utilise qu'un cfdump dans le cfc (ce qui fonctionne bien avec une soumission non-java) mais cela ne fonctionne pas avec cette configuration. Des idées?Comment créer un tableau approprié d'éléments de formulaire avec jQuery pouvant être utilisé dans une fonction ColdFusion?
Voici mon jQuery
$('#theForm').submit(function(e) {
e.preventDefault();
var formData = {};
$('form [name]').each(function(){
formData[this.name] = this.value;
});
$.post("cfc/engine.cfc?method=collectdata&returnformat=json",
{'formData': formData}
);
});
Et mon CFC
<cffunction name="collectdata" access="remote" output="false" returntype="void">
<cfargument name="formData" type="struct" required="yes">
<cfdump var="#formData#">
<cfabort>
</cffunction>
Quels sont les résultats que vous n'obtenez pas? Est-ce qu'il lance une erreur? Ou juste ne pas faire ce que vous attendez? –
"FORMDATA est requis mais n'a pas été transmis" est l'erreur que je reçois ... – Ofeargall
Supprimez la balise CFARGUMENT et vider la portée des arguments. Il vous montrera ce qui est posté. –