2017-10-12 1 views
0

액션 링크/하이퍼 링크를 사용하여 ASP.NET MVC 뷰 (.html)에서 JavaScript 함수를 호출하려고합니다.()/링크 단추. 왼쪽 클릭은 제대로 작동하지만 링크를 마우스 오른쪽 버튼으로 클릭하고 '새 탭 또는 페이지 열기'를 선택하면 작동하지 않습니다.하이퍼 링크/액션 링크/링크 버튼을 마우스 오른쪽 버튼으로 클릭 할 때 '새 탭 또는 페이지에서 열기'가 나타나지 않습니다.

지금까지왔다 내 시도 :

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

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

이렇게 앵커 태그에 target 속성을 추가했습니다. link

답변

0

This answer이 도움이 될 수 있습니다.

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

편집 :

a#foo을 마우스 오른쪽 버튼으로 클릭 할 때마다

는 하이퍼 링크 id 속성 (예를 들어, id="foo")를 제공 시도하고 특정 작업을 수행 클릭 핸들러를 생성 당신의 코멘트 :

나는 빨리 t를 실행하고 싶지 않다. 그는 사용자를 오른쪽 클릭합니다. 사용자가 링크를 마우스 오른쪽 버튼으로 클릭하고 새 탭 옵션 열기를 클릭하면 함수를 실행하고 싶습니다.

이러한 이벤트를 감지하는 다소 분명한 Chrome JavaScript API가없는 한 가능하지 않습니다. 자바 스크립트가 크롬의 작동 원리를 알지 못합니다. 또한 JavaScript는 사용자의 로컬 파일 시스템에 대한 액세스 권한이없는 방식으로 샌드 박싱됩니다. 확장을 통해 Google 크롬 프로세스가 수행하는 작업을 알 수 없습니다.

+0

내 목표에 가깝지만 사용자가 마우스 오른쪽 버튼을 클릭하자마자 바로이 기능을 실행하고 싶지 않습니다. 사용자가 링크를 마우스 오른쪽 버튼으로 클릭하고 새 탭 옵션 열기를 클릭하면 함수를 실행하고 싶습니다. 감사합니다. . –

+0

@ G.Ashu 불가능하다고 생각합니다. 내 업데이트 된 답변을 참조하십시오. – alex

0

이 답변에서 언급 한 접근 방식 사용 : 로컬에 저장하는 기능이있는 경우 How to run function on new tab from main tab? (Google Chrome)

은 기본적으로 로컬 스토리지와 페이지이 링크 오픈 페이지로드 이벤트에 함수를 저장하는 것을, 당신은 확인할 것 저장 장치가 있는지 확인한 다음 실행하십시오.

관련 문제