2009-12-10 9 views
0

Ce que je voudrais faire est d'ouvrir une nouvelle fenêtre, puis soumettre le formulaire dans cette nouvelle fenêtre après avoir rempli automatiquement les éléments du formulaire de la fenêtre d'origine. Voici ce que j'ai essayé de le faire:Remplir et soumettre un formulaire pour une fenêtre nouvellement ouverte

var username = 'myuser'; 
var password = 'mypass'; 
var loginWindow = window.open('http://www.mysite.com/form.html', 'loginWindow'); 
loginWindow.document.getElementById('username').value=username; 
loginWindow.document.getElementById('password').value=password; 
loginWindow.document.form.submit(); 

Cela ne fonctionne pas, et me donne plutôt l'erreur suivante: « Résultat d'expression « loginWindow.document »[Non défini] n'est pas un objet. »

Est-ce encore possible? Est-ce que jQuery peut résoudre cela?

+0

il vous manque un 'après l'url dans la fonction open. – SimonDever

+0

bon point, corrigé. ce n'était pas si :( – lennysan

+0

Je suis incapable de reproduire cette erreur, il fonctionne comme prévu quand je l'exécute dans Firefox, quel navigateur utilisez-vous? –

Répondre

1

Vous ne serez pas autorisé à faire référence à des objets dans un document hébergé sur un domaine différent de celui dans lequel le document en cours a été extrait. Les deux documents sont-ils dans le même domaine? Utilisez-vous le préfixe 'www' pour l'un mais pas l'autre?

Si vous devez transmettre des informations sur plusieurs domaines, pensez à les transmettre via l'URL. Sinon, y a-t-il une raison pour ne pas soumettre les données vous-même directement à l'endroit où le formulaire cible le soumettrait?

Questions connexes