2017-10-12 104 views
0

我试图使用动作链接/超链接从ASP.NET MVC视图(.html)调用JavaScript函数()/链接按钮。左键单击工作正常,但右键单击链接并选择“打开新标签页”不起作用。当超链接/动作链接/链接按钮被右键单击时,'新窗口或页面中未打开'

我尝试迄今已有:

<a href="#" onclick=aFunction()>link</a> 

    aFunction(object) 
    { 
     alert('Inside Javascript Function') 
    } 
+0

我在anchor tag上添加了像这样的target属性。 link

回答

0

This answer可能的帮助。

试着给你的超链接的id属性(比如,id="foo"),并创建一个执行指定的动作click处理每当a#foo是右键单击:

document.getElementById("foo").onmousedown = function(event) { 
    if (event.which == 3) { 
     alert('Inside Javascript Function'); 
    } 
} 

编辑

每您的评论:

我不想尽快执行函数t他用户右键单击。我想在用户右键单击链接并单击打开新选项卡选项后执行该功能。

我不认为这是可能的(除非有一些神秘的Chrome JavaScript API检测到这种事件)。 JavaScript不知道Chrome的工作原理。此外,JavaScript被沙盒化的方式使得它无法访问用户的本地文件系统 - 扩展后,它不应该知道Google Chrome进程本身在做什么。

+0

这看起来接近我的目标,但我不想在用户右键单击时执行该功能。我想在用户右键单击链接并单击打开新选项卡选项后执行该功能。 谢谢。 –

+0

@ G.Ashu我认为这是不可能的。请看我更新的答案。 – alex