уже долго колупаюсь, излазил все что только можно. Но не получается Имеется плагин ckeditor. В нем статически выводится информация в виде select Работает примерно это вот так:
Вот код этого участка:
id : 'hero',
type : 'select',
label : 'Выбери имя.',
items: [ [ 'Mamba', '1'],[ 'Lamba', '2'] ],
'default': '',
onChange: function( api ) {
// this = CKEDITOR.ui.dialog.select
alert( 'Current value: ' + this.getValue() );
}
Здесь мы выводим имя в список и при выборе получаем его значение. Походу вместо вот этого:
function( api ) {
// this = CKEDITOR.ui.dialog.select
alert( 'Current value: ' + this.getValue() );
}
мне нужен ajax запрос. Собственно, в items мне нужны значения из ajax.
$.ajax({
url: '/heroes',
success: function(data) {
for (var key in data)
{
// data[key][1] data[key][0] - примерно такого вида.
}
файл: heroes.php: не знаю куда выложить php код. Так что так.. https://codepen.io/anon/pen/zLwYjP
HeroesController.php: https://codepen.io/anon/pen/bjWGjV
Нужно чтобы подставлялось значение $array[$k][]=$heroes->name; так и html код так же который в $array[$k][] в datakey и data[key][0] Надеюсь смог мысль донести, уже отчаялся...
В запросе укажите
dataType: 'json'
В heroes.php выводите массив, как
echo json_encode($array);
Может кому пригодится, сделал вот так:
jQuery.extend({
getValues: function(url) {
var result = null;
$.ajax({
url: url,
type: 'get',
dataType: 'json',
async: false,
success: function(data) {
result = data;
console.log(result)
}
});
return result;
}
});
var results = $.getValues('/heroes');
CKEDITOR.plugins.add( 'hero',
{
icons: 'hero',
requires : ['richcombo'], //, 'styles' ],
init : function( editor )
{
editor.addCommand( 'abbrDialog', new CKEDITOR.dialogCommand( 'abbrDialog' ) );
editor.ui.addButton( 'Hero',
{
label: 'Выбрать героя',
command: 'abbrDialog',
} );
CKEDITOR.dialog.add( 'abbrDialog', function ( editor )
{
return {
title : 'Выбор героя',
minWidth : 400,
minHeight : 200,
contents :
[
{
id : 'tab1',
label : 'Tenants',
elements :
[
{
type : 'select',
id : 'style',
label : 'Style',
setup : '',
items : results,
commit : function( data )
{
data.style = this.getValue();
}
}
]
}
],
onOk : function()
{
var dialog = this;
var abbr = editor.document.createElement( 'span' );
abbr.setHtml( dialog.getValueOf( 'tab1', 'style' ) );
editor.insertElement( abbr );
}
};
} );
}
});
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Делаю бота по данной инструкции - https://djdiplomatru/kak-napist-telegram-bot-na-php Все создалось и зарегистрировал, вродебы без ошибок - но бот не реагирует на команды...