Я не могу выполнить никакую функцию js, запускаемую событием dijit, если не установил файл javascript в самом представлении.
Я установил различные файлы js для использования в моем контроллере следующим образом:
$layout = Zend_Layout::getMvcInstance();
$view = $layout->getView();
$view->headScript()
->appendFile('/public/js/jquery-1.5.1.min.js', 'text/javascript')
->appendFile('/public/js/jquery-ui-1.8.13.custom.min.js', 'text/javascript')
...
->appendFile('/public/js/functions.js', 'text/javascript');
, которые отражены в макете:
echo $this->headScript();
примечание: все они загружены
Но когда мое представление отображается, события, связанные сэлементы dijits не запускают функции в functions.js
Например, у меня есть этот элемент dijit:
$business = new Zend_Dojo_Form_Element_FilteringSelect('business');
$business ->setLabel("Etablissement :")
-> setStoreId('businessStore')
-> setStoreType('dojo.data.ItemFileReadStore')
-> setStoreParams(array('url' => '/public/business/getbusinesses?all=true&'))
-> setAttrib('searchAttr', 'nom')
-> setAttrib('onchange',"cB()")
-> setRequired(true)
-> setValue('business');
и функция js:
function cB() {
alert("changed");
}
Нодаже если я оберну cB (), это не сработает:
$(document).ready(function() {
function cB() {
alert("changed");
}
});
Есть ли у Сомоне идея?Я застрял с этой проблемой JavaScript во всем моем приложении Zend = (
спасибо!