2010-04-13 3 views
1

j'ai cette situation:Ouvrez deux nouveaux onglets en utilisant Javascript

Il y a une page de connexion avec un formulaire de connexion (form action est $ _SERVER [ 'PHP_SELF']). Lors de la connexion de l'utilisateur, il vérifie à quelle application l'utilisateur peut accéder et ouvre toutes les applications disponibles pour cet utilisateur dans un nouvel onglet. Si l'utilisateur peut accéder à l'application (par exemple) 'Docs' et 'Sites', il ouvrira 2 onglets.

I Ouvrez un nouvel onglet en utilisant window.open('app1.html','_newhtml');, certaines personnes disent que cela ne fonctionne que dans Firefox. C'est bon, pas grave pour moi.

Le problème est, il ne ouvert onglet 1, bien que je l'écris 2 fois

 
window.open('app1.html','_newhtml'); 
window.open('app2.html','_newhtml'); 

Comment puis-je ouvrir 2 onglets? Y a-t-il des hacks du coté serveur ou de la programmation côté client?

+2

BTW Vous ne pouvez pas contrôler si le navigateur ouvre des onglets ou de nouvelles fenêtres. – Tomalak

+2

Et les gens se demandent pourquoi d'autres personnes désactivent JavaScript par défaut ... – animuson

Répondre

4

Le problème est que vous identifiez la fenêtre avec le même identificateur. Vous utilisez un personnalisé, mais vous pouvez aussi fournir celles qui sont réservées navigateur (_self, _top et _blank)

Essayez cette

window.open('app1.html','_newhtml'); 
window.open('app2.html','_newhtml2'); 

ou tout simplement utiliser _blank qui ne garantit pas un nouvel onglet, simplement une nouvelle fenêtre si le navigateur le supporte.

+0

Thx pour la réponse alex, cela fonctionne – Permana

1

L'utilisation de '_blank' en tant que cible sera toujours ouverte dans une nouvelle vue du navigateur. Cela peut être un nouvel onglet ou une nouvelle fenêtre, selon le navigateur et les paramètres de l'utilisateur (certains navigateurs ne supportent pas les onglets, etc.).

L'autre option consiste à utiliser deux identifiants nommés distincts (tels que '_newhtml' et '_newhtml2'), ce qui vous permettrait ensuite d'ouvrir ultérieurement d'autres pages dans ces mêmes 2 fenêtres.

+0

Je ne sais pas exactement quel est le second paramètre. Merci pour les réponses – Permana

Questions connexes