本文整理汇总了PHP中JavaScriptHelper::_array_or_string_for_javascript方法的典型用法代码示例。如果您正苦于以下问题:PHP JavaScriptHelper::_array_or_string_for_javascript方法的具体用法?PHP JavaScriptHelper::_array_or_string_for_javascript怎么用?PHP JavaScriptHelper::_array_or_string_for_javascript使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类JavaScriptHelper
的用法示例。
在下文中一共展示了JavaScriptHelper::_array_or_string_for_javascript方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: auto_complete_field
/**
* Adds AJAX autocomplete functionality to the text input field with the
* DOM ID specified by +field_id+.
*
* This function expects that the called action returns a HTML <ul> list,
* or nothing if no entries should be displayed for autocompletion.
*
* You'll probably want to turn the browser's built-in autocompletion off,
* so be sure to include a autocomplete="off" attribute with your text
* input field.
*
* The autocompleter object is assigned to a Javascript variable named <tt>field_id</tt>_auto_completer.
* This object is useful if you for example want to trigger the auto-complete suggestions through
* other means than user input (for that specific case, call the <tt>activate</tt> method on that object).
*
* Required +options+ are:
* <tt>url</tt>:: URL to call for autocompletion results
* in url_for format.
*
* Addtional +options+ are:
* <tt>update</tt>:: Specifies the DOM ID of the element whose
* innerHTML should be updated with the autocomplete
* entries returned by the AJAX request.
* Defaults to field_id + '_auto_complete'
* <tt>with</tt>:: A JavaScript expression specifying the
* parameters for the XMLHttpRequest. This defaults
* to 'fieldname=value'.
* <tt>indicator</tt>:: Specifies the DOM ID of an element which will be
* displayed while autocomplete is running.
* <tt>tokens</tt>:: A string or an array of strings containing
* separator tokens for tokenized incremental
* autocompletion. Example: <tt>tokens => ','</tt> would
* allow multiple autocompletion entries, separated
* by commas.
* <tt>min_chars</tt>:: The minimum number of characters that should be
* in the input field before an Ajax call is made
* to the server.
* <tt>on_hide</tt>:: A Javascript expression that is called when the
* autocompletion div is hidden. The expression
* should take two variables: element and update.
* Element is a DOM element for the field, update
* is a DOM element for the div from which the
* innerHTML is replaced.
* <tt>on_show</tt>:: Like on_hide, only now the expression is called
* then the div is shown.
* <tt>select</tt>:: Pick the class of the element from which the value for
* insertion should be extracted. If this is not specified,
* the entire element is used.
* @deprecated
*/
function auto_complete_field($field_id, $options = array())
{
$function = "var {$field_id}_auto_completer = new Ajax.Autocompleter(";
$function .= "'{$field_id}', ";
$function .= !empty($options['update']) ? "'{$options['update']}', " : "'{$field_id}_auto_complete', ";
$function .= "'".UrlHelper::url_for($options['url'])."'";
$js_options = array();
if (!empty($options['tokens'])){
$js_options['tokens'] = JavaScriptHelper::_array_or_string_for_javascript($options['tokens']) ;
}
if (!empty($options['with'])) {
$js_options['callback'] = "function(element, value) { return {$options['with']} }";
}
if (!empty($options['indicator'])) {
$js_options['indicator'] = "'{$options['indicator']}'";
}
if (!empty($options['select'])) {
$js_options['select'] = "'{$options['select']}'";
}
$default_options = array(
'on_show' => 'onShow',
'on_hide' => 'onHide',
'min_chars' => 'min_chars'
);
foreach ($default_options as $key=>$default_option) {
if (!empty($options[$key])) {
$js_options[$default_option] = $options[$key];
}
}
$function .= ', '.JavaScriptHelper::_options_for_javascript($js_options).')';
return JavaScriptHelper::javascript_tag($function);
}