soumettre un formulaire dans un nouvel onglet

143

J'aimerais (juste pour tester certaines fonctions, après j'éviterai ce comportement) charger la page appelée par submit sur un nouvel onglet: est-ce possible?

Markzzz
la source

Réponses:

306
<form target="_blank" [....]

soumettra le formulaire dans un nouvel onglet ... Je ne suis pas sûr si c'est ce que vous recherchez, veuillez mieux expliquer ...

Strae
la source
1
Oh oui! c'est ce que je veux dire! Désolé mon anglais est si merdique. J'ai édité le sujet, l'espoir est plus compréhensif pour le moment :)
markzzz
1
le jquerytag m'a confondu, je pensais que vous
parliez d'
4
@nalply: Sérieusement? La plupart des navigateurs utilisent des onglets chaque fois qu'un site Web leur suggère d'utiliser une nouvelle fenêtre ( target="_blank"). Et c'est une bonne chose car à peu près personne ne veut qu'un site Web ouvre une nouvelle fenêtre et je ne pense pas que cette valeur par défaut changera jamais car à peu près tous les sites Web l'utilisent de _blanknos jours.
ThiefMaster
C'est balayer un détail important sous le tapis. _blankn'ouvre pas de nouvel onglet. Il ouvre une nouvelle fenêtre , qui la plupart du temps (mais pas toujours !!) ouvre par défaut un nouvel onglet . Cela dépend de la configuration du navigateur. Veuillez voir cette réponse fortement votée: stackoverflow.com/a/4907854/220060
nalply
@nalply je peux être d'accord avec vous que cette commande ouvre le lien dans une nouvelle fenêtre , mais vous devez être d'accord avec moi pour dire que tous les navigateurs connus ouvrent aujourd'hui de nouvelles fenêtres sous forme d' onglets , donc le résultat est le même. Si l'utilisateur a configuré le navigateur pour ouvrir manuellement une nouvelle fenêtre, puis est un choisir qu'il a fait et nous ne pouvons rien faire pour empêcher cela.
Strae
23

J'ai un bouton [soumettre] et un bouton [aperçu], je veux que l'aperçu montre la vue d'impression des données de formulaire soumises, sans les conserver dans la base de données. Par conséquent, je veux que [aperçu] s'ouvre dans un nouvel onglet, et soumette pour soumettre les données dans la même fenêtre / onglet.

<button type="submit" id="liquidacion_save" name="liquidacion[save]" onclick="$('form').attr('target', '');">Save</button></div>    <div>
<button type="submit" id="liquidacion_Previsualizar" name="liquidacion[Previsualizar]" onclick="$('form').attr('target', '_blank');">Preview</button></div>  
juanmf
la source
16

Il est également possible d'utiliser le nouvel attribut de bouton appelé formtargetqui a été introduit avec HTML5.

<form>
  <input type="submit" formtarget="_blank"/>
</form>
dragontree
la source
15

Ajoutez target="_blank"à la <form>balise.

ThiefMaster
la source
8

Puisque vous avez ce jQuery étiqueté, je suppose que vous voulez quelque chose à coller dans votre fonction de réussite?

success: function(data){
    window.open('http://www.mysite.com/', '_blank');
}
SickHippie
la source
4

Essayez d'utiliser jQuery

<script type="text/javascript">
$("form").submit(function() {
$("form").attr('target', '_blank');
return true;
});
</script>

Voici une réponse complète - http://ftutorials.com/open-html-form-in-new-tab/

webtech
la source
2

Cela fonctionnera également très bien, vous pouvez faire autre chose pendant qu'un nouveau gestionnaire d'onglets le soumet.

<form target="_blank">
    <a href="#">Submit</a>
</form>

<script>
    $('a').click(function () {
        // do something you want ...

        $('form').submit();
    });
</script>
Lien
la source
1

Les options de votre navigateur doivent être définies pour ouvrir de nouvelles fenêtres dans un nouvel onglet, sinon une nouvelle fenêtre de navigateur est ouverte.

ArtieJ
la source