сохранение html-редактора на компьютере Клиента - PullRequest
2 голосов
/ 15 июня 2011

У меня есть CKEditor на моей странице, чтобы позволить пользователям редактировать html онлайн.

одна из функций, которые я хочу добавить на страницу, - это возможность сохранять содержимое редактора с помощьюкнопка типа «Сохранить шаблон», за которой следует окно сохранения / открытия без предупреждений безопасности или обновления страницы.

Я понимаю, что Javascript не может получить доступ к файловой системе клиента, поэтому я не могу использоватьчтобы создать и сохранить файл.

Мой следующий подход состоял в том, чтобы отправить содержимое редактора на сервер, сохранить его как файл и затем отправить обратно пользователю.

, поскольку я неЯ не хочу, чтобы страница обновлялась. Я использовал метод AJAX для сохранения дизайна.

Теперь в функции JavaScript OnSucceed я активировал скрытый iframe, который получает файл с сервера, но это активирует предупреждение безопасности IE..

Я пытался запустить метод и iframe одновременно, теперь нет предупреждений, но iframe выполняется всегда раньше, чем метод AJAX ...

Есть ли другой способ сделать это?мне не хватает чего-то простого ...?

РЕДАКТИРОВАТЬ:

Я использовал iframe с UploadPanel, как предложено в

http://encosia.com/ajax-file-downloads-and-iframes/

Ответы [ 2 ]

1 голос
/ 15 июня 2011

Я бы пошел по аналогичному маршруту - отправил его в оба конца на сервер. Действительно, это процесс, с помощью которого я реализовал все виды страниц для извлечения файлов с сервера - но я никогда не сталкивался с предупреждением по безопасности от того, что написал (но я не использую asp.net).

Вы не сказали, что такое предупреждение о безопасности, и не касалось ли SSL каким-либо образом.

Я предлагаю вам создать тестовую установку, где пользователь просто нажимает кнопку, чтобы запустить JavaScript и скомпилировать ответ от статических данных на сервере, опосредованный вашим кодом. Обратите внимание, что если вы хотите, чтобы файл загружался, вы должны указать это в заголовках ответов, например

Content-Disposition: attachment; filename="yourfile.html"

Вы можете также попытаться вернуть mimetype, явно не поддерживаемый браузером, для принудительной загрузки:

Content-type: application/octet-stream

НТН

0 голосов
/ 15 июня 2011

Я бы порекомендовал вам использовать Clients SessionStorage или LocalStorage для последующего доступа.используйте библиотеку, чтобы облегчить вашу жизнь Вот идет KIZZY

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...