Я использую следующий код для реализации некоторых функций jquery-ui:
<?php $this->Html->script(array(
'jquery-ui-1.8.16.custom.min.js',
'jquery-1.6.2.min.js'
),
null,
array(
'inline'=>'false',
'once'=>'true'
)
);
?>
<script>
jQuery(document).ready(function(){
$('.cv .collapsable').click(function() {
$(this).next().toggle('slow');
return false;
}).next().hide();
});
</script>
Целевые элементы / классы - это элементы и вложенные элементы.Функциональность jquery работает, однако, за счет ошибок php array_merge (), таких как:
Warning (2): array_merge() [function.array-merge]: Argument #2 is not an array [CORE/Cake/View/Helper/HtmlHelper.php, line 478]
Warning (2): array_merge() [function.array-merge]: Argument #2 is not an array [CORE/Cake/View/Helper/HtmlHelper.php, line 478]
Warning (2): array_merge() [function.array-merge]: Argument #2 is not an array [CORE/Cake/View/Helper/HtmlHelper.php, line 478]
Я что-то не так делаю?Это ошибка?Я пытался просто добавить теги <script>
в макет default.ctp, но не смог заставить работать URL-адреса.Я сделал это с помощью CakePHP 1.3, поэтому я немного ошеломлен проблемой, с которой я столкнулся сейчас.Любая помощь будет высоко ценится.
ОБНОВЛЕНИЕ
Так что это мой полный код: PHP:
<?php $this->Html->script(
array(
'jquery-1.6.2.min'
),
null,
array(
'inline'=>'false',
)
); ?>
JQuery:
<script>
jQuery(document).ready(function() {
$('div.collapsable').click(function() {
$(this).next().slideToggle("slow");
return false;
});
});
</script>
Я удалил скрипт jquery-ui, чтобы упростить вещи - когда я это делаю, я выдаю только две ошибки «array_merge», сейчас.Тем не менее, если я удаляю 'null' - который даже не должен существовать, поскольку функция принимает только два параметра - я теряю всю функциональность (ошибки также исчезают).
Но все становится еще более странным!
Я посмотрел в cake-> core-> lib-> helper-> htmlhelper и исследовал функцию;у него есть строка, которая проверяет, является ли массив $options
логическим значением.Если я вместо этого использую этот код:
<?php $this->Html->script(
array(
'jquery-1.6.2.min'
),
false
); ?>
, я теряю способность указывать либо inline = true
, либо once = true
, однако я по крайней мере получаю полную функциональность без ошибок array_merge()
.Это ошибка в 2.0?