Класс JsHelper
Класс-помощник генератора Javascript для удобного использования JavaScript.
JsHelper предоставляет абстрактный интерфейс для создания JavaScript с использованием заданной библиотеки на стороне клиента.
- AppHelper
-
JsHelper
Авторские права: Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
Лицензия: MIT License
Расположение: Cake/View/Helper/JsHelper.php
Резюме свойств
-
$_bufferedScriptsprotectedСкрипты, которые находятся в очереди для выводаarray -
$_engineNameprotectedТекущий движок Javascript, который используетсяstring -
$_jsVarsprotectedПеременные для передачи в Javascript.array -
$bufferScriptspublicБуферизировать или выводить скрипты.boolean -
$helperspublicЗависимости Helperarray -
$setVariablepublicПеременная javascript, созданная переменными set().string
Резюме магических свойств
Резюме методов
- __call() public
call__ Разрешает перенаправление методов на Helper движка. Методы в списке bufferedMethods движка будут автоматически буферизованы. Вы можете управлять буферизацией с помощью параметра buffer также. Установив последний параметр любого метода движка на boolean, вы можете принудительно включить или отключить буферизацию.
- __construct() publicКонструктор - определяет helper движка
- _createVars() protectedГенерирует строку объекта для переменных, передаваемых в javascript, и добавляет в буфер
- _getHtmlOptions() protected
Обрабатывает набор опций и извлекает опции Html. Извлеченные опции Html удаляются из параметра $options.
- buffer() publicЗаписать скрипт в буферизованные скрипты.
- getBuffer() publicПолучить все буферизованные скрипты
- link() public
Сгенерировать ссылку 'Ajax'. Использует выбранный движок JS для создания элемента ссылки, который расширен с помощью Javascript. Опции могут включать как те, что предназначены для HtmlHelper::link(), так и JsBaseEngine::request(), JsBaseEngine::event();
- set() public
Передать переменные в Javascript. Позволяет устанавливать переменные, которые будут выведены при получении буфера с помощью
JsHelper::getBuffer()илиJsHelper::writeBuffer(). Переменная Javascript, используемая для вывода переменных set, может контролироваться с помощьюJsHelper::$setVariable - submit() public
Использует выбранный движок JS для создания элемента input типа submit, который расширен с помощью Javascript. Опции могут включать как те, что предназначены для FormHelper::submit(), так и JsBaseEngine::request(), JsBaseEngine::event();
- value() public
Переопределяет унаследованный Helper::value() См. JsBaseEngineHelper::value() для получения дополнительной информации об этом методе.
- writeBuffer() public
Записывает все сгенерированные Javascript до сих пор в блок кода или кеширует их в файл и возвращает связанный скрипт. Если буферизованных скриптов нет, этот метод вернет null. Если запрос представляет собой XHR (ajax) запрос, onDomReady будет установлен в false. Так как dom уже 'готов'.
Подробное описание методов
__call()source public
__call( string $method , array $params )
call__ Разрешает перенаправление методов на Helper движка. Методы в списке bufferedMethods движка будут автоматически буферизованы. Вы можете управлять буферизацией с помощью параметра buffer также. Установив последний параметр любого метода движка на boolean, вы можете принудительно включить или отключить буферизацию.
Например: $js->get('#foo')->effect('fadeIn', array('speed' => 'slow'), true);
Принудительно включит буферизацию для метода effect. Если метод принимает массив опций, вы также можете добавить параметр 'buffer' в массив опций и управлять буферизацией там же.
Например: $js->get('#foo')->event('click', $functionContents, array('buffer' => true));
Параметр buffer не будет передан в EngineHelper.
Параметры
- строка
$method - Метод, который должен быть вызван
- массив
$params - Параметры вызываемого метода.
Возвращает
смешанноеЗависит от возвращаемого значения вызываемого метода, или это может быть экземпляр EngineHelper
__construct()source public
__construct( View $View , string|array $settings array() )
Конструктор - определяет helper движка
Параметры
-
View$View - объект представления, к которому прикреплен helper.
- строка/массив
$settingsнеобязательно array() - Массив настроек содержит имя helper движка.
_createVars()source protected
_createVars( )
Генерирует строку объекта для переменных, передаваемых в javascript, и добавляет в буфер
_getHtmlOptions()source protected
_getHtmlOptions( array $options , array $additional array() )
Обрабатывает набор опций и извлекает опции Html. Извлеченные опции Html удаляются из параметра $options.
Параметры
- массив
$options - Опции для фильтрации.
- массив
$additionalнеобязательно array() - Массив дополнительных ключей для извлечения и включения в возвращаемый массив опций.
Возвращает
массивМассив js опций и Htmloptions
buffer()source public
buffer( string $script , boolean $top false )
Записать скрипт в буферизованные скрипты.
Параметры
- строка
$script - Строка скрипта, которая должна быть добавлена в буфер.
- boolean
$topнеобязательно false Если true, скрипт будет добавлен в начало массива буферизованных скриптов. Если false, в конец.
Ссылка
http://book.cakephp.org/2.0/en/core-libraries/helpers/js.html#JsHelper::buffergetBuffer()source public
getBuffer( boolean $clear true )
Получить все буферизованные скрипты
Параметры
- boolean
$clearнеобязательно true - Очистить кэш скриптов (по умолчанию true)
Возвращает
массивМассив скриптов, добавленных в запрос.
Ссылка
http://book.cakephp.org/2.0/en/core-libraries/helpers/js.html#JsHelper::getBufferlink()source public
link( string $title , string|array $url null , array $options array() )
Генерирует ссылку «Ajax». Использует выбранный движок JS для создания элемента ссылки, улучшенного с помощью JavaScript. Опции могут включать как те, что для HtmlHelper::link(), так и для JsBaseEngine::request(), JsBaseEngine::event();
Опции
-
confirm- Генерировать диалоговое окно подтверждения confirm() перед отправкой события. -
id- использовать пользовательский идентификатор. -
htmlAttributes- дополнительные нестандартные атрибуты html. Стандартные атрибуты: class, id, rel, title, escape, onblur и onfocus. -
buffer- Отключить буферизацию и вернуть тег скрипта дополнительно к ссылке.
Параметры
- строка
$title - Заголовок ссылки.
- строка|массив
$urlнеобязательно null - Смешанное значение: либо строка URL, либо массив CakePHP URL.
- массив
$optionsнеобязательно array() - Опции для HTML-элемента и Js::request()
Возвращает
строкаЗавершенная ссылка. Если буферизация отключена, также будет возвращён тег скрипта.
Ссылка
http://book.cakephp.org/2.0/ru/core-libraries/helpers/js.html#JsHelper::linkset()source public
set( string|array $one , string|array $two null )
Передает переменные в JavaScript. Позволяет установить переменные, которые будут выведены при получении буфера с JsHelper::getBuffer() или JsHelper::writeBuffer() Переменная JavaScript для вывода установленных переменных может быть контролирована с помощью JsHelper::$setVariable
Параметры
- строка|массив
$one - Либо массив переменных для установки, либо имя переменной для установки.
- строка|массив
$twoнеобязательно null - Если $one — строка, $two — значение для этого ключа.
Ссылка
http://book.cakephp.org/2.0/ru/core-libraries/helpers/js.html#JsHelper::setsubmit()source public
submit( string $caption null , array $options array() )
Использует выбранный движок JS для создания элемента ввода submit, улучшенного с помощью JavaScript. Опции могут включать как те, что для FormHelper::submit(), так и для JsBaseEngine::request(), JsBaseEngine::event();
Формы, отправляемые с помощью этого метода, не могут отправлять файлы. Файлы не передаются через XmlHttpRequest и требуют использования iframe или flash.
Опции
-
url- URL, куда должна быть отправлена XHR-запрос. -
confirm- Строка для сообщения confirm() перед отправкой запроса. -
method- Метод, которым форма должна быть отправлена, по умолчанию POST -
buffer- Буферизовать ли код скрипта, по умолчанию true. - Также см. опции для JsHelper::request() и JsHelper::event()
Параметры
- строка
$captionнеобязательно null - Текст отображения кнопки отправки.
- массив
$optionsнеобязательно array() - Массив опций для использования. См. опции для вышеупомянутых методов.
Возвращает
строкаЗавершенная кнопка отправки.
Ссылка
http://book.cakephp.org/2.0/ru/core-libraries/helpers/js.html#JsHelper::submitvalue()source public
value( mixed $val array() , boolean $quoteString null , string $key 'value' )
Переопределяет унаследованный Helper::value() См. JsBaseEngineHelper::value() для получения дополнительной информации об этом методе.
Параметры
- смешанное
$valнеобязательно array() - Переменная PHP, подлежащая преобразованию в JSON
- логическое
$quoteStringнеобязательно null - Если false, значения строк остаются необрамленными в кавычки
- строка
$keyнеобязательно 'value' - Имя ключа.
Возвращает
строкаБезопасное для JavaScript/JSON представление $val
Ссылка
http://book.cakephp.org/2.0/ru/core-libraries/helpers/js.html#JsHelper::valuewriteBuffer()source public
writeBuffer( array $options array() )
Записывает весь сгенерированный JavaScript в блок кода или кеширует их в файл и возвращает связанный скрипт. Если скрипты не были буферизованы, этот метод вернёт null. Если запрос — XHR (ajax), onDomReady будет установлен в false. Так как DOM уже «готов».
Опции
-
inline- Установите в true, чтобы скрипты выводились как блок скрипта внутри, еслиcacheтакже true, будет сгенерирован тег ссылки на скрипт. (по умолчанию true) -
cache- Установите в true, чтобы скрипты кэшировались в файле и подключались (по умолчанию false) -
clear- Установите в false, чтобы предотвратить очистку кэша скриптов (по умолчанию true) -
onDomReady- Обёрнуть кэшированные скрипты в событие domready (по умолчанию true) -
safe- Если генерируется инлайновый блок, следует ли его обернуть в (по умолчанию true)
Параметры
- массив
$optionsнеобязательно array() - опции для блока кода
Возвращает
смешанноеЗавершенный тег JavaScript, если есть скрипты, если буферизованных скриптов нет, будет возвращено null.
Ссылка
http://book.cakephp.org/2.0/ru/core-libraries/helpers/js.html#JsHelper::writeBufferПодробное описание свойств
$_bufferedScriptssource
protected массив
Скрипты, которые находятся в очереди для вывода
См. также
JsHelper::buffer()array()
$_jsVarssource
protected массив
Переменные для передачи в JavaScript.
См. также
JsHelper::set()array()
Подробное описание магических свойств
$Formsource
public FormHelper
$Htmlsource
public HtmlHelper
© 2005–2016 The Cake Software Foundation, Inc.
Licensed under the MIT License.
CakePHP is a registered trademark of Cake Software Foundation, Inc.
We are not endorsed by or affiliated with CakePHP.
https://api.cakephp.org/2.9/class-JsHelper.html