数组中每个元素的变量

时间:2016-01-25 20:08:56

标签: javascript jquery

作为JavaScript的新手,我偶然发现了这个简单的问题,我需要为数组中的每个项目创建一个对象。

更具体地说,我想为一些textareas创建一个WYSIWYG文本编辑器,然后听取这些编辑器对象的输入。

一个元素的代码是:

// Make an element a text editor area.
var editorArea = new Edicy.TextEditorView({el: $('.foo')});
// Save on input
editorArea.editor.on('aftercommand:composer', function() {
pageData.set('key', 'value');
});

由于我有很多这方面的内容,我想使用jQuery.each()来启动这些文本编辑器,并使用元素的data-id属性根据独特的侦听器:

$('#c-success-tabs-content .tab-pane').each(function(){
    var successID = $(this).attr('data-id');
    successesList.push(successID);
    var editorArea[successID] = new Edicy.TextEditorView({el: $('.foo')});
    editorArea[successID].editor.on('aftercommand:composer', function() {
        pageData.set('key', 'value');
    });
});

作为命名方案" var editorArea [successID]"从那个听众" editorArea [successID]"在JavaScript中不可能,最佳解决方案是什么?

2 个答案:

答案 0 :(得分:0)

它只是你的语法错了;你可以拥有一系列编辑

var editorArea = [];   // declare globally

然后

editorArea[successID] = new Edicy.TextEditorView({el: $('.foo')});

答案 1 :(得分:0)

使用对象:

attachBaseContext()