Я пытаюсь изменить плагин TinyMCE link (plugin. js), чтобы адаптировать его к проекту, в котором я работаю.
Я не могу скрыть / показать элемент в модальном окне (Dialog) подключаемого модуля ссылки. (Я не могу ссылаться на элементы, поскольку вижу, что их идентификаторы меняются в новом исполнении )
Отредактировано: (По крайней мере, я хотел бы знать, как ссылаться на в диалоговом окне. Предоставленное «имя» не существует во входах и в полях выбора (как я вижу в исходном коде), а их идентификаторы генерируются случайным образом при каждом новом запросе страницы. Если бы я мог ссылаться на элементы, я мог бы взять другие способы найти решение)
Я добавил поле выбора под названием «тип ссылки» в диалоговое окно подключаемого модуля ссылки. Если его выбранное значение - «внутреннее», то входной текст URL-адреса должен скрывать и отображать другое поле со списком, называемое «сущностями». Если, с другой стороны, выбран «внешний», то скройте поле со списком «сущности» и покажите поле ввода «url»
Я включил функцию (в ссылку / плагин. js), которая является вызывается в замыканиях onchange, пытаясь получить его с помощью методов DOM, но безуспешно.
var onTypeLinkChange = function(data) {
//data are the modal window elements
if ( data.linktype == 'intlink' ) {
tinymce.DOM.hide(data.url);
tinymce.DOM.show(data.entities);
}
else {
tinymce.DOM.hide(data.entities);
tinymce.DOM.show(data.url);
}
return Option.none();
}
var onChange = function (getData, change) {
if (change.name === 'linktype') {
return onTypeLinkChange(getData());
} else if (change.name === 'url') {
return onUrlChange(getData());
[...]
};
return { onChange: onChange };
};