2013-10-02 2 views
1

Cross пост от: http://www.kendoui.com/forums/kendo-ui-web/editor/access-denied-error-when-document-domain-is-set-.aspxошибка доступа при document.domain устанавливается

Я работаю в приложении, где необходимо установить document.domain. Это не подлежит обсуждению. Когда document.domain установлен, и я использую localhost или FQDM, тогда я получаю сообщение об ошибке «Отказано в доступе» от Kendo. Это как-то связано с созданием или доступом к iframe для редактора. Ошибка возникает в строке 301 kendo.editor.js, которая:

295  iframe = $("<iframe />", { src: 'javascript:""', frameBorder: "0" }) 
296      .css("display", "") 
297      .addClass("k-content") 
298      .insertBefore(textarea)[0]; 
299  
300  wnd = iframe.contentWindow || iframe; 
301  doc = wnd.document || iframe.contentDocument; 

Вы можете воспроизвести эту проблему, взяв редактор демо (найденный здесь в кендо загрузки: примеры \ Web \ редактор \ index.html) и добавить следующий сценарий тег в конце главы:

<script>document.domain=document.domain;</script> 

Установка document.domain после редактор инициализируется явно работает, но, вероятно, не всегда вариант. Как заставить редактор работать после установки document.domain? Есть ли способ «отменить» document.domain? Очевидно, я предпочел бы не редактировать кендо, но если есть исправление, которое они могут добавить, я бы открыл для него ошибку.

Я попытался установить document.domain iframe через js в его исходном атрибуте document.domain своего родителя, но это не помогло.

Это происходит в IE 8 & 9. Версия Kendo, которую я использую, - 2013.2.716. Дайте мне знать, если вам нужна какая-либо другая информация.

ответ

3

Единственным непосредственным решением является инициализация редактора с помощью элемента contentEditable, как показано здесь: http://demos.kendoui.com/web/editor/inline-editing.html. Тогда редактор не создаст iframe.

+0

Я настраиваю редактор с помощью .Net MVC html helper. Можете ли вы настроить встроенный редактор с этим или мне нужно будет перейти на JS для его настройки? В настоящее время я не вижу способа сделать это с помощником. – bygrace

+1

@bygrace в настоящее время это невозможно сделать с помощью помощника MVC. Однако стоит добавить в будущий выпуск. –

+0

@bygrace проблема должна быть исправлена. –

Смежные вопросы