Jquery使用数组创建上下文菜单

时间:2014-08-29 06:08:55

标签: javascript jquery arrays

这是我的代码,它在不使用数组的情况下运行完美,并在div上创建上下文菜单,但现在我想从数组创建一些上下文菜单项。当我应用数组时,它在一行中显示所有数组项,并用逗号(,)分隔。但我需要不同行中的所有项目。

http://jsfiddle.net/danial786zz/sobnwgeb/这个小提琴工作得很完美,但我需要从数组制作物品。

 
$('#div_id").chromeContext({
items: [

      { title: array,         onclick: function () { RToTb(array_name) } },
      { title: 'properties'   onclick: function () { abc();            } },
      { title: 'view'         onclick: function () { def();            } }

    ]

});

2 个答案:

答案 0 :(得分:2)

我认为这对你有用:

我已经从另一个数组中创建了一个数组,并在上下文菜单中使用了它。

 $(function(){
    var arr = ['1st Row', '2nd Row', '3rd Row'];
    var menuitems = [];
    $.each(arr, function( index, value ) {
       menuitems[index] =  { title: value, onclick: function () { RToTb(array_name) }};
    });

    $('#div_id').chromeContext({
       items : menuitems
    });
});

FIDDLE

答案 1 :(得分:0)

这是关于你的数组定义。每个数组元素中都应该有对象。

$(function(){
   var arr=[];
   arr[0]= { 'title': '1st row', 'onclick:': function () { RToTb(array_name); } };
   arr[1]={ 'title': '2st row', 'onclick:': function () { RToTb(array_name); }};
   arr[2]={ 'title': '3st row', 'onclick:': function () { RToTb(array_name); }};


   $('#div_id').chromeContext({
      items: arr
   });
});

检查以下链接以获取工作示例: http://jsfiddle.net/v7v8f386/1/