/ / Clic automatique vers un lien ajouté dynamiquement - javascript, jquery

Cliquez automatiquement sur le lien ajouté dynamiquement - javascript, jquery

Je veux cliquer automatiquement sur le lien ajouté dynamiquement. Voici mon script

document.write("<a id="tikla" href="http://www.example.org">tikla</a>");

$("#tikla").click();

Cependant, cela ne fonctionne pas, car le lien est un objet ajouté dynamiquement. Quelle est la bonne façon de le faire?

Réponses:

2 pour la réponse № 1

Qu'essayez-vous de faire? Il semble que vous vouliez simplement vous rendre à l'emplacement href?

Si tel est le cas, vous pouvez simplement aller

window.location.href = "http://www.example.org";

2 pour la réponse № 2

Vous devez ajouter un gestionnaire de clics avant de déclencher un événement de clic

Démo en direct

document.write("<a id="tikla" href="http://www.example.org">tikla</a>");

$("#tikla").click(function(){
alert("clicked");
});

$("#tikla").click();

Pour la liaison d'événements pour les éléments ajoutés dynamiquement, jQuery fournit délégation d'événement en utilisant jQuery sur().

Événements délégués

Les événements délégués ont l’avantage de pouvoirtraiter les événements de les éléments descendants ajoutés au document ultérieurement. Par choisir un élément qui est garanti d'être présent au moment de la gestionnaire d'événements délégué est attaché, vous pouvez utiliser des événements délégués pour évitez la nécessité d'attacher et de supprimer fréquemment des gestionnaires d'événements.

$( "#staticparent" ).on( "click", "#tikla", function() {
alert("clicked");
});

1 pour la réponse № 3

Vous pouvez l'essayer comme ça aussi ...

document.write("<a id="tikla" href="http://www.example.org">tikla</a>");

window.location.href = $("#tikla").attr("href");
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>


1 pour la réponse № 4

Utilisation

$("#tikla").get(0).click();

Parce que, vous devez émuler le clic de l'élément dom.

$("#tikla").click(); déclenchera l'événement jquery click lié à cet élément d'ancrage. Dans votre cas, rien n'est lié à l'élément d'ancrage.

Violon


1 pour la réponse № 5

Essaye ça,

$("<a id="tikla" href="http://www.example.org">tikla</a>")
.appendTo("body") // appendto body
.get(0).click(); // triggering click to itself

$("<a id="tikla" href="http://www.example.org">tikla</a>")
.appendTo("body")
.get(0).click();
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>


0 pour la réponse № 6
var myLink = document.getElementById("tikla");
myLink.click();

Merci à tous, mais aucun n'a fonctionné dans Internet Explorer. J'ai trouvé que ce simple javascript fonctionne dans tous les navigateurs.