我不是Web开发人员,我只需要做一次小任务,但是我讨厌复制和粘贴。
看看下面的代码,我想避免复制和粘贴(question1,question2,...,question [i])。我想创建一个for语句,但是我应该使用动态名称处理属性。在C#中,我将使用反射或动态。
是否可以使用Javascript?这是正确的方法吗?我应该动态生成代码并使用Eval()吗?
tinymce.Pluginmanager.add('test_containers',function(editor,url) {
editor.addButton('test_containers2',{
title: 'Container 2',text: 'Container 2',onclick: function() {
editor.windowManager.open({
title: 'Test Container',body: [{
type: 'container',layout: 'stack',columns: 2,minWidth: 500,minHeight: 500,items: [{
type: 'textbox',name: 'question1'
},{
type: 'textbox',name: 'question2'
},]
}],onsubmit: function(e) {
ed.insertContent(e.data.question1 + e.data.question2);
}
});
}
});
});
tinymce.init({
selector: '#mytextarea',plugins: 'colorpicker test_containers',toolbar: 'test_containers2'
});
// Taken from core plugins
var editor = tinymce.activeEditor;
function createColorPickaction() {
var colorPickerCallback = editor.settings.color_picker_callback;
if (colorPickerCallback) {
return function() {
var self = this;
colorPickerCallback.call(
editor,function(value) {
self.value(value).fire('change');
},self.value()
);
};
}
}
<script src="https://cdn.tinymce.com/4/tinymce.min.js"></script>
<textarea id="mytextarea">Hello,World!</textarea>