2014-10-01 53 views
-1

我已经通过Simulate a click on 'a' element using javascript/jquery但它没有帮助。使用javascript单击'a'元素

我对运行的代码是

<a target="gsft_main" id="9ddfe6c10a0a0b7e0062ccf1e8afc011" data-cancelable="true" class="menu" href="discovery_status_list.do?sysparm_userpref_module=9ddfe6c10a0a0b7e0062ccf1e8afc011">Status</a> 

我在下面的代码

document.getElementById('9ddfe6c10a0a0b7e0062ccf1e8afc011').click() 

执行,但它不工作。我也试过

$('#9ddfe6c10a0a0b7e0062ccf1e8afc011').trigger('click') 

没有成功。如果我跑

document.getElementById('9ddfe6c10a0a0b7e0062ccf1e8afc011') 

它返回null。

+1

如果你得到空,那么执行该代码时该元素不存在。请先检查一下。 – zvona 2014-10-01 11:42:39

+0

什么是data-cancelable =“true”在做什么? – Keith 2014-10-01 11:43:27

+0

这与JSON有什么关系? – 2014-10-01 11:43:50

回答

0

直接触发'a'元素在这种情况下不起作用。如果您将文本换成跨度并在跨度上触发点击事件,则应该起作用。

<a id="test" href="http://stackoverflow.com"><span>Status</span></a> 

和使用jQuery:

$('#test span').trigger('click'); 

,如果你得到的document.getElementById( '9ddfe6c10a0a0b7e0062ccf1e8afc011'),你可能做了一个错字空...

+0

无法跨越它,因为我还没有创建此网站。我试图自动点击该链接后,每5秒或所以,我试着从chrome提供的控制台中,我也尝试过'document.getElementById('9ddfe6c10a0a0b7e0062ccf1e8afc011').href',但是它也返回null,但是当我手动点击那个链接时它运行良好。在编写脚本时,我不确定很多事情,但是由于我知道编码,所以我可以让我的脑袋围绕几个:) – user2683109 2014-10-01 17:15:40

+0

尝试:$('#9ddfe6c10a0a0b7e0062ccf1e8afc011')[0] .click();这也应该起作用。 – Willem 2014-10-01 18:38:24

+0

我得到'TypeError:无法读取null的属性'0'如果我正常运行该命令,它总是返回'null'。我想可能是这个问题。当我简单地执行$('#9ddfe6c10a0a0b7e0062ccf1e8afc011')'时,它给出'null' – user2683109 2014-10-01 19:54:23