单击以生成'a'元素的ajax

时间:2012-04-15 11:14:30

标签: javascript ajax google-chrome click

无法对生成的ajax click()元素执行a。但我可以选择。

function cansel(){
    var cansel_button = document.getElementById('cansel_button');
    console.log(cansel_button);
    console.log('post');
    cansel_button.click();
}

我得到了这个日志:

<a id=​"cansel_button" style=​"text-decoration:​none;​" class="" onclick="">​…​</a>​
post
extensions/event.js:185Error in event handler for 'undefined': TypeError: Object  has no method 'click'
    at cansel (unknown source)
    at unknown source
    at [object Object].dispatch (extensions/event.js:183:28)
    at Object.<anonymous> (extensions/miscellaneous_bindings.js:177:22)

是的,这是从chrome扩展程序注入的脚本。

UPD: 注入页面的触发器类似于$('#element').live('click', function(){ }),我需要执行此操作而不会发生任何黑客攻击。

1 个答案:

答案 0 :(得分:1)

document.getElementById方法返回DOM Element,其中没有您尝试调用的"click"方法。如果你想调用click处理程序,那么你需要使用它:

 cansel_button.onclick();

而不是cansel_button.click();