Как я могу получить содержимое от dijit / Editor? - PullRequest
0 голосов
/ 24 мая 2018

Я хочу использовать dijit/Editor, чтобы позволить пользователям вводить форматированный текст в форму.Документация здесь .Я установил div в своей форме и добавил атрибуты для редактора HTML.

<label for="eed-event-description" class="required">Event Description</label><br />
<div id="eed-event-description" data-dojo-type="dijit/Editor" height="120px" title="required: brief description of what someone attending can expect at the event" required>
    <p></p>
</div>

Это приводит к большому количеству нового кода, включая iframe:

<iframe id="eed-event-description_iframe" style="border: medium none; width: 100%; height: 120px;" title="Event Description" src="javascript: '<!DOCTYPE html><html lang=\'en\'>
<head>
<meta http-equiv=\'Content-Type\' content=\'text/html\'>
<title>Event Description</title><style>
    body,html {
        background:transparent;
        padding: 1px 0 0 0;
        margin: -1px 0 0 0;
    }
    body,html,#dijitEditorBody { outline: none; }html { height: 100%; width: 100%; overflow: hidden; }
    body,#dijitEditorBody { height: 100%; width: 100%; overflow: auto; }
    body{
        top:0px;
        left:0px;
        right:0px;
        font:400 16px &quot;Lucida Sans Unicode&quot;, Arial, Helvetica, sans-serif;
        line-height:1.125;
    }
    p{ margin: 1em 0; }
    li > ul:-moz-first-node, li > ol:-moz-first-node{ padding-top: 1.2em; }
    li{ min-height:1.2em; }
</style>

</head>
<body role=\'application\' aria-label=\'Event Description\'onload=\'try{frameElement &amp;&amp; frameElement._loadFunc(window,document)}catch(e){document.domain=&quot;id0129.vps.sonic.net&quot;;frameElement._loadFunc(window,document)}\' style=\'\'><div id=\'dijitEditorBody\' role=\'textbox\' aria-multiline=\'true\'  aria-label=\'Event Description\'></div></body>
</html>'" class="dijitEditorIFrame" frameborder="0"></iframe>

Я не знаю, как ссылаться на область, где пользователь добавляет текст, и я не вижу никакой документации по dojotoolkit.org , которая говорит мне, как получить результаты в JavaScript для обработки,Как мне получить этот текст?

1 Ответ

0 голосов
/ 24 мая 2018

dijit/Editor имеет метод .get ('value') для получения содержимого области HTML,

Таким образом, вы можете просто получить ссылку на ваш dijit, используяdijit/registry и используйте функцию.

var myEditor = registry.byId("eed-event-description");
var htmlValue = myEditor.get('value');

См. Fiddle для демонстрации

...