Я пытаюсь использовать ZendX_jQuery и Datatables для проекта. В моем файле макета у меня есть:
if($this->jQuery()->isEnabled()){
$this->jQuery()->setLocalPath('/js/jquery/js/jquery-1.4.2.min.js')
->setUiLocalPath('/js/jquery/js/jquery-ui-1.8.4.custom.min.js')
->addStylesheet('/css/smoothness/custom.css')
->addJavascriptFile('/js/jquery.dataTables.js');
echo $this->jQuery();
}
Всякий раз, когда у меня отображается объект, использующий помощник ZendX, объект datatables отображается нормально. Однако, если у меня нет объекта, таблица не будет отображаться.
Примеры:
Данные работают из-за даты:
<link rel="stylesheet" href="/css/smoothness/custom.css" type="text/css" media="screen" />
<script type="text/javascript" src="/js/jquery/js/jquery-1.4.2.min.js"></script>
<script type="text/javascript" src="/js/jquery/js/jquery-ui-1.8.4.custom.min.js"></script>
<script type="text/javascript" src="/js/jquery.dataTables.js"></script>
Данные повреждены из-за отсутствия средства выбора даты:
<link rel="stylesheet" href="/css/smoothness/custom.css" type="text/css" media="screen" />
<script type="text/javascript" src="/js/jquery/js/jquery-1.4.2.min.js"></script>
<script type="text/javascript" src="/js/jquery.dataTables.js"></script>
Очевидное отличие здесь заключается в том, что без других объектов jQuery ZendX не будет помещать файл jQuery UI в заголовок. Есть ли способ заставить это сделать это? Мне не нравится объявлять файл сценария пользовательского интерфейса дважды, чтобы убедиться, что каждая страница его получает.
Спасибо,
Джо Чин