이 예제는 약간 단순화되었지만 내 ASP.NET 웹 페이지에서 내 C#/jquery 코드에서 오른쪽 마우스를 누르면 'rightMenu'를 표시하는 오른쪽 컨텍스트 메뉴를 사용하고 있습니다. 클릭합니다.일반 자바 스크립트 호출에서 요소 ID 가져 오기
$(document).ready(function() {
$(".RH_signoffrow td").contextMenu({
menu: 'rightMenu'
},
function(action, el, pos) {
var mykey = getkeyforitem(el);
mykey = "Details|" + mykey;
alert(
'Action: ' + action + '\n\n' +
'Key is: ' + mykey
);
if(action == "details"){
trigger_details_panel(mykey);
}
});
};
//for any td in the right hand side - get its row key
function getkeyforitem(el){
var mykey = $(el).parent().find('.hiddenrowkey').text();
// alert(
// 'Internal getkeyforitem Call' + '\n\n' +
// 'Key is: ' + mykey
// );
return mykey;
};
메뉴 콜백 클릭 된 요소를 다시 통과하고, 그 현재의 테이블 행 밖으로 당겨 keydata하는데 사용될 수있다. 그 keydata를 얻으면, 나는 그 함수를 호출하여 실제 내가했던 함수를 호출 할 수있다 : trigger_details_panel (mykey).
오른쪽 마우스 만 사용하려는 경우이 방법을 사용하면 좋지만 이미지를 클릭하면 오른쪽 마우스 메뉴 선택과 같은 효과가 나타나도록 이미지를 일부 행에 포함하고 싶습니다. .
잘 수행하는 방법을 모르겠습니다. 내 페이지에 자바 스크립트로 연결하는 이미지를 포함 할 수
...
<asp:ImageButton ID="imgDetails" runat="server" ToolTip="Show Details"
ImageUrl="./images/details.gif" OnClientClick="showdetailsclicked();return
false;"></asp:ImageButton>
하지만 어떻게 내가 그것을 코드 전화를받을 수 있습니다
getkeyforitem(el);
또는 적어도 요소를 알고를 (엘) 그것은에 속하는가? 내가 원하는 것에 도달하기 위해 (this) 포인터를 사용하는 방법이 있어야하는 것처럼 보입니다. 그러나 나는 그것을 보지 못합니다. 전체적인 문제를 해결하는 좀 더 간단한 방법이 없습니까?
'.contextMenu'. 어떤 플러그인입니까? –
컨텍스트 메뉴가 메인 jquery 사이트에 나열되었지만 직접 링크는 다음 위치에 있습니다. http://abeautifulsite.net/2008/09/jquery-context-menu-plugin/ – Jim