59 votes

Javascript: ouvre une nouvelle page dans la même fenêtre

Existe-t-il un moyen simple de modifier ce code pour que l'URL cible s'ouvre dans la fenêtre SAME?

 <a href="javascript:q=(document.location.href);void(open('http://example.com/submit.php?url='+escape(q),'','resizable,location,menubar,toolbar,scrollbars,status'));">click here</a>``
 

82voto

parwaze Points 301
 <script type="text/javascript">
window.open ('YourNewPage.htm','_self',false)
</script>
 

voir référence: http://www.w3schools.com/jsref/met_win_open.asp

74voto

keparo Points 13747

Le second paramètre de la fenêtre.open() est une chaîne de caractères représentant le nom de la fenêtre cible.

Le définir: "_self".

<a href="javascript:q=(document.location.href);void(open('http://example.com/submit.php?url='+escape(q),'_self','resizable,location,menubar,toolbar,scrollbars,status'));">click here</a>


Sidenote: La question suivante donne un aperçu d'une sans doute le meilleur moyen de lier des gestionnaires d'événements pour les liens HTML.

Quelle est la meilleure façon de remplacer les liens avec js fonctions?

7voto

Stephen Walcher Points 2066
<a href="javascript:;" onclick="window.location = 'http://example.com/submit.php?url=' + escape(document.location.href);'">Go</a>;

3voto

essayez cela a fonctionné pour moi en 7 et 8

  $(this).click(function (j) {
            var href = ($(this).attr('href'));
            window.location = href;
            return true;
 

1voto

nickf Points 185423

Je voudrais prendre que d'une manière légèrement différente si j'étais vous. Modifier le texte du lien lorsque le chargement de la page, pas sur le clic. Je vais vous donner l'exemple en jQuery, mais il pourrait facilement être fait à la vanille javascript (jQuery est plus joli)

$(function() {
    $('a[href$="url="]')    // all links whose href ends in "url="
        .each(function(i, el) {
            this.href += escape(document.location.href);
        })
    ;
});

et d'écrire votre code HTML comme ceci:

<a href="http://example.com/submit.php?url=">...</a>

les avantages sont que les gens puissent voir ce qu'ils sont en cliquant sur (le href est déjà fait), et il supprime le javascript de votre code HTML.

Tout cela est dit, on dirait que vous êtes à l'aide de PHP... pourquoi ne pas l'ajouter à côté serveur?

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X