Сериализация HTML строки из PHP в JS

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

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

Первая идея — это воспользоваться JSON преобразованием. Но функция json_encode лишь частично совместима с js методом JSON.parse, и на практике вы можете столкнуться с некоторыми проблемами.

Второй подход — это использование функции URL перекодировки, который у меня заработал отлично, им я поделюсь далее.

Со стороны PHP шаблона вы используете функцию urlencode:

Со стороны скрипта JS (+jQuery) используем следующее преобразование:

Т.е. кроме вызова функции decodeURIComponent нужно заменить символ + пробелами.

Мало букафф? Читайте есчо !

Формируем относительную ссылку

Март 2, 2017 г.

Посмотрим как можно сформировать url относительно текущего местоположения файла в php. К примеру, у в каталоге /site-script/ находится программа на PHP  и подкаталог /site-script/img, где хранятся картинки. Требуется построить относительный ...

Читать

PHP: функция преобразования к каноническому пути

Январь 26, 2021 г.

На замену realpath, который работает только с реально существующими файлами и папками UNIX, а также не работающий для ссылок, я написал функцию получения канонического пути. В документации встречается функция eio_realpath, которая требует подключения ...

Читать

DOMDocument кодировка при сохранении в HTML

Декабрь 20, 2016 г.

PHP поддерживает работу с классом DOMDocument, но есть некоторые особенности, которые требуют внимания. Одна из них - это html кодирование символов, если вы не укажете в заголовке документа мета информацию о кодировке. Рассмотрим пример: [crayon-6a27c1e8eeb87019533124/] ...

Читать

php - получить первый день следующего месяца

Ноябрь 19, 2019 г.

При создании расписаний, календарей, и т.п. могут возникать задачи вроде - получить timestamp первого дня этого месяца, или последнего дня следующего и т.п. В лоб это решается вот так: [crayon-6a27c1e8eed14774091521/] Со следующим месяцем ...

Читать
 

Комментарии к «Сериализация HTML строки из PHP в JS»

Понравилась статья? Есть вопросы? - пишите в комментариях.



Комментарий: