使用jQuery以编程方式点击<a>链接

我知道这个问题之前已经被问过了,但是在networkingsearch之后,我似乎找不到一个简单的答案。

HTML

<a id=myAnchor href=index.php> 

jQuery (这两个都不行)

  $('#myAnchor').click(); 

要么

 $('#myAnchor').trigger('click'); 

什么是最简单和最有效的方法来实现呢?

尝试这个:

 $('#myAnchor')[0].click(); 

这个对我有用。

 window.location = document.getElementById('myAnchor').href 

点击只是触发点击事件/事件而不是实际的“goto-the-links-href”操作。

你必须编写自己的处理程序,然后你的$('#myAnchor')。trigger('click'); 将工作…

 $("#myAnchor").click(function(event) { var link = $(this); var target = link.attr("target"); if($.trim(target).length > 0) { window.open(link.attr("href"), target); } else { window.location = link.attr("href"); } event.preventDefault(); }); 
 <a href="#" id="myAnchor">Click me</a> <script type="text/javascript"> $(document).ready(function(){ $('#myAnchor').click(function(){ window.location.href = 'index.php'; }); }) </script> 

我尝试了几个上述解决scheme,但他们没有为我工作。 这里是一个链接到我工作的页面自动点击一个链接

以上链接有很多解决scheme,这里是为我工作的,

  <button onclick="fun();">Magic button</button> <!--The link you want to automatically click--> <a href='http://www.ercafe.com' id="myAnchor">My website</a> 

现在在<script>标签中,

 <script> function fun(){ actuateLink(document.getElementById('myAnchor')); } function actuateLink(link) { var allowDefaultAction = true; if (link.click) { link.click(); return; } else if (document.createEvent) { var e = document.createEvent('MouseEvents'); e.initEvent( 'click' // event type ,true // can bubble? ,true // cancelable? ); allowDefaultAction = link.dispatchEvent(e); } if (allowDefaultAction) { var f = document.createElement('form'); f.action = link.href; document.body.appendChild(f); f.submit(); } } </script> 

复制粘贴上面的代码,点击'Magic button'button,你将被redirect到ErCafe.com

onclick="window.location = this.href"到您的<a>元素。 在这个修改之后,它可能是.click()与预期的行为。 要在页面上的每个链接都这样做,可以添加以下内容:

 <script type="text/javascript"> $(function () { $("a").attr("onclick", "window.location = this.href"); }); </script> 

如果您使用的是jQuery,可以使用jQuery.trigger http://api.jquery.com/trigger/

 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title></title> <script type="text/javascript" src="https://code.jquery.com/jquery-2.2.3.js"></script> </head> <body> <a id="foo" onclick="action()"></a> <script type="text/javascript"> function action(){ window.location.replace("http://stackoverflow.com/q/9081426/5526354") } $("#foo").trigger("click"); </script> </body> </html> 

这个为我工作:

 $('#myAnchorId')[0].click();