如何在Jeditable中右击鼠标启用此功能?

时间:2011-10-31 14:44:54

标签: asp.net jeditable

如何在鼠标右键单击时启用此功能?

默认情况下它适用于左键单击,然后出现下拉列表,而我希望右键单击显示下拉列表,是否有任何方式我更改默认行为。

 $(".editable_select").editable("http://www.appelsiini.net/projects/jeditable/php/save.php", {
        indicator: '<img src="img/indicator.gif">',
        data: "{'Lorem ipsum':'Lorem ipsum','Ipsum dolor':'Ipsum dolor','Dolor sit':'Dolor sit'}",
        type: "select",
        submit: "OK",
        style: "inherit",
        submitdata: function () {
            return { id: 2 };
        }

您可以在此处查看更多内容,http://www.appelsiini.net/projects/jeditable/default.html

寻找内联选择。

1 个答案:

答案 0 :(得分:1)

你想要的是只在右键单击启用jEditable。您可以通过以下三个步骤来实现这一目标:

  1. 检测到右键点击
  2. 在事件处理程序中启用jEditable
  3. 编辑完成后禁用jEditable
  4. 以下内容应该有效:

    $('#editable').mousedown(function(event) {
        if (event.which != 3) return;
        event.preventDefault();
    
        $(this).editable('url', {
            ...
            type: "select",
            onreset: function() {
                this.parent().editable('destroy');
            }
        }).click();
    });
    

    请参阅此操作:http://jsfiddle.net/william/2wBEW/

    在该示例中,我使用oncontextmenu="return false"来阻止右键单击的默认上下文菜单。请注意,它是非标准的,不能指望在所有浏览器上运行。