Jquery 使用ruby中的上下文菜单获取右键单击的元素
请参阅所附图片 对于上述treeview菜单代码:Jquery 使用ruby中的上下文菜单获取右键单击的元素,jquery,ruby-on-rails,ruby,ruby-on-rails-3,contextmenu,Jquery,Ruby On Rails,Ruby,Ruby On Rails 3,Contextmenu,请参阅所附图片 对于上述treeview菜单代码: ret = "<ul id='navigation1'>" tree.each do |node| # if node.InstallationName == parent_id ret += "<li>" ret += link_to_remote(node.InstallationName, :url => {:controller
ret = "<ul id='navigation1'>"
tree.each do |node|
# if node.InstallationName == parent_id
ret += "<li>"
ret += link_to_remote(node.InstallationName, :url => {:controller => "ptcgeodatabase", :action => "page_node"},
:with => "'installation_name_delete='+'#{node.InstallationName}'",:update => "mcfcontent1")
Geoptcmenu.connectdb($mantmasterdblocation)
sub = Geoptcmenu.find(:all,:select=>'Distinct MCFName',:conditions=>['InstallationName=?', node.InstallationName])
ret += display_mcftree_child(sub, node.InstallationName)
ret += "</li>"
# end
end
ret += "</ul>"
我无法获取右键单击的元素。有没有办法获取右键单击元素的名称?ret=“ ret = "<ul id='navigation1'>"
tree.each do |node|
# if node.InstallationName == parent_id
ret += "<li>"
ret += link_to(node.InstallationName, "#")
Geoptcmenu.connectdb($mantmasterdblocation)
sub = Geoptcmenu.find(:all,:select=>'Distinct MCFName',:conditions=>['InstallationName=?', node.InstallationName])
ret += display_mcftree_child(sub, node.InstallationName)
ret += "</li>"
# end
end
ret += "</ul>"
$(function() {
$('#navigation1 li').mousedown(function(event) {
var selectedelementid = this.id;
if (selectedelementid) {
switch (event.which) {
case 1:
//alert('Left mouse button pressed');
$('#navigation1 li').removeClass('selected');
$(this).addClass('selected');
$.post("/ptcgeodatabase/page_node", {
installation_name_delete: selectedelementid
});
break;
case 2:
var message ="<div style="+"padding-top:30px;padding-left:5px;color:red;padding-right:5px;padding-bottom:10px;font-size:small;"+">You have clicked middle mouse button</div>";
$.colorbox({html:message ,transition:"none" ,width:"300px" ,height:"150px"});
//alert('You have clicked middle mouse button.');
break;
case 3:
//alert('Right mouse button pressed');
$('#navigation1 li').removeClass('selected');
$(this).addClass('selected');
$.post("/ptcgeodatabase/page_node", {
installation_name_delete: selectedelementid
});
break;
default: break;
}
}
});
});
tree.each do|节点|
#如果node.InstallationName==parent\u id
ret+=“”
ret+=链接到(node.InstallationName,“#”)
Geoptcmenu.connectdb($mantmasterdblocation)
sub=Geoptcmenu.find(:all,:select=>'Distinct MCFName',:conditions=>['InstallationName=?',node.InstallationName])
ret+=显示\u mcftree\u子项(子项,节点.InstallationName)
ret+=“ ”
#结束
结束
ret+=“”
$(函数(){
$(“#导航1 li”).mousedown(函数(事件){
var selectedelementid=this.id;
如果(selectedelementid){
开关(event.which){
案例1:
//警报(“按下鼠标左键”);
$(“#导航1 li”).removeClass('selected');
$(this.addClass('selected');
$.post(“/ptcgeodatabase/page_node”{
安装\u名称\u删除:selectedelementid
});
打破
案例2:
var message=“您已单击鼠标中键”;
$.colorbox({html:message,transition:“none”,width:“300px”,height:“150px”});
//警报('您已单击鼠标中键');
打破
案例3:
//警报(“按下鼠标右键”);
$(“#导航1 li”).removeClass('selected');
$(this.addClass('selected');
$.post(“/ptcgeodatabase/page_node”{
安装\u名称\u删除:selectedelementid
});
打破
默认:中断;
}
}
});
});
ret = "<ul id='navigation1'>"
tree.each do |node|
# if node.InstallationName == parent_id
ret += "<li>"
ret += link_to(node.InstallationName, "#")
Geoptcmenu.connectdb($mantmasterdblocation)
sub = Geoptcmenu.find(:all,:select=>'Distinct MCFName',:conditions=>['InstallationName=?', node.InstallationName])
ret += display_mcftree_child(sub, node.InstallationName)
ret += "</li>"
# end
end
ret += "</ul>"
$(function() {
$('#navigation1 li').mousedown(function(event) {
var selectedelementid = this.id;
if (selectedelementid) {
switch (event.which) {
case 1:
//alert('Left mouse button pressed');
$('#navigation1 li').removeClass('selected');
$(this).addClass('selected');
$.post("/ptcgeodatabase/page_node", {
installation_name_delete: selectedelementid
});
break;
case 2:
var message ="<div style="+"padding-top:30px;padding-left:5px;color:red;padding-right:5px;padding-bottom:10px;font-size:small;"+">You have clicked middle mouse button</div>";
$.colorbox({html:message ,transition:"none" ,width:"300px" ,height:"150px"});
//alert('You have clicked middle mouse button.');
break;
case 3:
//alert('Right mouse button pressed');
$('#navigation1 li').removeClass('selected');
$(this).addClass('selected');
$.post("/ptcgeodatabase/page_node", {
installation_name_delete: selectedelementid
});
break;
default: break;
}
}
});
});