2010-03-05 6 views
4

J'ai un formulaire avec un bouton de soumission. J'ai appelé une fonction sur le clic du bouton de soumission. Maintenant, je veux que les données de formulaire doivent être soumises à deux pages différentes. Ces pages sont sur des serveurs différents.Deux actions différentes sur le formulaire submit

Je sais que nous pouvons envoyer les données à une page particulière en fonction des conditions, mais je ne suis pas sûr que nous pouvons soumettre à deux pages différentes en même temps à savoir:

function actionPage(form1) 
{ 
    form1.action="action1.php"; 
    form1.submit(); 
    return(true); 
    form1.action="action2.php"; 
    form1.submit(); 
    return(true); 

} 

En ce moment, il est montrant action1.php

Répondre

4

vous ne pouvez pas le faire en utilisant simple formulaire post soumettre. mais vous pouvez le faire en utilisant AJAX.

dès que vous appelez submit() fn, les données du formulaire sont publiées sur la page de l'URL d'action. par conséquent, vous pourriez finir par charger la page.

+0

Comment logiciels panier gérer cela? Je veux dire que lorsque vous cliquez sur le paiement, vos informations sont enregistrées dans la base de données et vous êtes également dirigé vers une passerelle de paiement. Même si vous n'êtes pas en mesure de remplir la partie passerelle de paiement, vos informations de commande sont enregistrées. Il y a clairement 2 choses qui se passent sur le même clic - certaines données sont insérées dans une base de données et un formulaire est soumis. – Vinayak

+4

vinayak, vous devez d'abord comprendre poste de format HTML. ce que vous dites est techniquement un formulaire. Une fois le formulaire publié, les données sont stockées et le serveur envoie le navigateur pour la redirection en fonction du code côté serveur. pas basé sur le code côté client. Je voudrais vous suggérer d'apprendre la forme HTML et la redirection côté serveur – coder

3

Vous ne pouvez pas. Vous pouvez soumettre des données à plusieurs endroits en utilisant un XmlHttpRequest.

2

Vous ne pouvez pas envoyer le formulaire de cette manière à plusieurs endroits. Vous pouvez le faire du côté client via AJAX, ou vous pouvez poster le formulaire sur une page qui soumettra les données partout où il faut aller. Avec l'approche AJAX, vous rencontrerez des problèmes de soumission à un domaine différent en raison du same origin policy. Je suggère d'utiliser cURL sur le côté serveur pour envoyer les données à d'autres domaines.

2

Tout aussi simple que cela:

<form name=f1 type=post action=''> 
    <input type='submit' value='first url' onclick="f1.action='/save'"> 
    <input type='submit' value='second url' onclick="f1.action='/process'"> 
</form> 

Extrait de: http://www.plus2net.com/html_tutorial/submit-two.php

+0

Ooops désolé, mal compris la question Il pourrait être beaucoup plus simple et strightforward d'appeler une action d'un autre côté serveur plutôt que de soumettre le formulaire deux fois. –

Questions connexes