Javascript Generator helper class for easy use of JavaScript.
JsHelper provides an abstract interface for authoring JavaScript with a given client-side library.
JsHelper $_bufferedScripts protected array$_engineName protected string$_jsVars protected array$bufferScripts public boolean$helpers public array$setVariable public stringcall__ Allows for dispatching of methods to the Engine Helper. methods in the Engines bufferedMethods list will be automatically buffered. You can control buffering with the buffer param as well. By setting the last parameter to any engine method to a boolean you can force or disable buffering.
Parse a set of Options and extract the Html options. Extracted Html Options are removed from the $options param.
Generate an 'Ajax' link. Uses the selected JS engine to create a link element that is enhanced with Javascript. Options can include both those for HtmlHelper::link() and JsBaseEngine::request(), JsBaseEngine::event();
Pass variables into Javascript. Allows you to set variables that will be output when the buffer is fetched with JsHelper::getBuffer() or JsHelper::writeBuffer() The Javascript variable used to output set variables can be controlled with JsHelper::$setVariable
Uses the selected JS engine to create a submit input element that is enhanced with Javascript. Options can include both those for FormHelper::submit() and JsBaseEngine::request(), JsBaseEngine::event();
Overwrite inherited Helper::value() See JsBaseEngineHelper::value() for more information on this method.
Writes all Javascript generated so far to a code block or caches them to a file and returns a linked script. If no scripts have been buffered this method will return null. If the request is an XHR(ajax) request onDomReady will be set to false. As the dom is already 'ready'.
__call( string $method , array $params )
call__ Allows for dispatching of methods to the Engine Helper. methods in the Engines bufferedMethods list will be automatically buffered. You can control buffering with the buffer param as well. By setting the last parameter to any engine method to a boolean you can force or disable buffering.
e.g. $js->get('#foo')->effect('fadeIn', array('speed' => 'slow'), true);
Will force buffering for the effect method. If the method takes an options array you may also add a 'buffer' param to the options array and control buffering there as well.
e.g. $js->get('#foo')->event('click', $functionContents, array('buffer' => true));
The buffer parameter will not be passed onto the EngineHelper.
$method $params __construct( View $View , string|array $settings array() )
Constructor - determines engine helper
View $View $settings optional array() _createVars( )
Generates the object string for variables passed to javascript and adds to buffer
_getHtmlOptions( array $options , array $additional array() )
Parse a set of Options and extract the Html options. Extracted Html Options are removed from the $options param.
$options $additional optional array() buffer( string $script , boolean $top false )
Write a script to the buffered scripts.
$script $top optional false If true the script will be added to the top of the buffered scripts array. If false the bottom.
getBuffer( boolean $clear true )
Get all the buffered scripts
$clear optional true link( string $title , string|array $url null , array $options array() )
Generate an 'Ajax' link. Uses the selected JS engine to create a link element that is enhanced with Javascript. Options can include both those for HtmlHelper::link() and JsBaseEngine::request(), JsBaseEngine::event();
confirm - Generate a confirm() dialog before sending the event.id - use a custom id.htmlAttributes - additional non-standard htmlAttributes. Standard attributes are class, id, rel, title, escape, onblur and onfocus.buffer - Disable the buffering and return a script tag in addition to the link.$title $url optional null $options optional array() set( string|array $one , string|array $two null )
Pass variables into Javascript. Allows you to set variables that will be output when the buffer is fetched with JsHelper::getBuffer() or JsHelper::writeBuffer() The Javascript variable used to output set variables can be controlled with JsHelper::$setVariable
$one $two optional null submit( string $caption null , array $options array() )
Uses the selected JS engine to create a submit input element that is enhanced with Javascript. Options can include both those for FormHelper::submit() and JsBaseEngine::request(), JsBaseEngine::event();
Forms submitting with this method, cannot send files. Files do not transfer over XmlHttpRequest and require an iframe or flash.
url The url you wish the XHR request to submit to.confirm A string to use for a confirm() message prior to submitting the request.method The method you wish the form to send by, defaults to POSTbuffer Whether or not you wish the script code to be buffered, defaults to true.$caption optional null $options optional array() value( mixed $val array() , boolean $quoteString null , string $key 'value' )
Overwrite inherited Helper::value() See JsBaseEngineHelper::value() for more information on this method.
$val optional array() $quoteString optional null $key optional 'value' writeBuffer( array $options array() )
Writes all Javascript generated so far to a code block or caches them to a file and returns a linked script. If no scripts have been buffered this method will return null. If the request is an XHR(ajax) request onDomReady will be set to false. As the dom is already 'ready'.
inline - Set to true to have scripts output as a script block inline if cache is also true, a script link tag will be generated. (default true)cache - Set to true to have scripts cached to a file and linked in (default false)clear - Set to false to prevent script cache from being cleared (default true)onDomReady - wrap cached scripts in domready event (default true)safe - if an inline block is generated should it be wrapped in (default true)$options optional array() Completed javascript tag if there are scripts, if there are no buffered scripts null will be returned.
protected array
Scripts that are queued for output
array()
public FormHelper
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