据我所知,TinyMCE复选框的复选框只返回true或false。这是正确的吗?
有没有办法获得复选框列表?并且复选框列表中选中的所有项目值都将通过editor.insertContent()
方法
或者,做一个for
循环以检查是否已检查其中的每一项,如果已检查,则检索一个值?
(function() {
tinymce.PluginManager.add(\'portfolio_shuffle_button\', function( editor, url ) {
editor.addButton( \'portfolio_shuffle_button\', {
text: \'Popup\',
icon: false,
onclick: function() {
editor.windowManager.open( {
title: \'Choose which Items\',
body: [
//or perhaps do a for loop to check each of these are checked and if they are retrieve a value?
{
type: \'checkbox\',
name: \'title\',
label: \'Your title\',
classes: \'what\'
},
{
type: \'checkbox\',
name: \'lol\',
label: \'Your title\',
classes: \'what\'
},
],
onsubmit: function( e ) {
console.log(e.data[0]);
console.log(e);
editor.insertContent( \'<h3>\' + e.data.body + \'</h3>\');
}
});
}
});
});
})();
SO网友:josh
正确的对象名称首先,确保使用正确的对象名称。而不是使用label
用于复选框;使用text
相反(TinyMCE Checkbox Syntax)
提交:
使用
onsubmit()
作用表单中的信息被传递到函数中。因此,我们可以使用函数的第一个参数来检查表单值。
因此,第一个复选框的值为e.data.title
. 第二个复选框是e.data.lol
. 这个name
表单元素的e.data.
对象
现在在中检查值onsubmit()
作用我们可以测试每个复选框是否包含真值或假值;并相应地进行编码。
完整代码这里是完整的修改代码:
editor.windowManager.open( {
title: \'Choose which Items\',
body: [
{
type: \'checkbox\',
name: \'title\',
text: \'Your title\',
classes: \'what\'
},
{
type: \'checkbox\',
name: \'lol\',
text: \'Your title\',
classes: \'what\'
}
],
onsubmit: function( e ) {
// Set var for sending back to editor
send_to_editor = \'\';
// Check first checkbox
if(e.data.title === true) {
send_to_editor += \'whatever value for true title\';
}
// Check second checkbox
if(e.data.lol === true) {
send_to_editor += \'another value for true lol\';
}
// Send back to editor
editor.insertContent(send_to_editor);
}
});
您可能需要调整
send_to_editor
可变,以满足您的需要。