html <a> activate on click on enter pressed</a>

时间:2014-06-17 07:35:16

标签: javascript php jquery html ajax

我希望在按下回车按钮时激活链接<a href='#' onclick='function()'>的onclick事件。这应该可行,但我似乎并没有让它发挥作用。 Trigger a button click with JavaScript on the Enter key in a text box。这也不适用于按钮。

原因可能是因为我因为加载问题而运行并加载了我的大部分接口,因为加载问题,某些计算需要相当长的时间,所以我想我应该使用ajax来显示我的页面元素以便我可以更新真实时间而不是让用户等待服务器5到10秒。然而,这似乎使下面的代码无效。

我的代码

//This comes from a different php file which is read out on the server with
//readfile() in php after an ajax call. In other words it echoes the 
//contents of this file on the page including this link. 
echo "<a href='#' onclick='dosomething()' ID='Enter'>Click me</a>";

//js
$("#Enter").keyup(function(event){
    if(event.keyCode == 13){
        $("#Enter").click();
    }
});

function dosomething(){
    //activate some code depends on the link.
}

那么我该怎么做呢?在通过ajax导入的链接上激活oncl​​ick on enter?这甚至可能吗?

2 个答案:

答案 0 :(得分:2)

<强> Working Demo

试试这个,

使用keypress事件,它不会在#Enter上触发,因为它是<a>标记。

$(document).keypress(function(event){

    if(event.keyCode == 13){
        $("#Enter").click();   //OR $("#Enter").trigger('click');
    }
});

function dosomething(){
    alert('..');
    //activate some code depends on the link.
}

答案 1 :(得分:0)

你可以这样做

$("#Enter").keypress(function(event){
    if(event.keyCode == 13){
       dosomething();
    }
});

即使你可以Trigger喜欢

$("#Enter").trigger('click');