Zend framework2 是否使用AJAX在ZF2中包含js和css
我在ZF2中有一些视图必须包含js和css文件。 我可以这样做,因为:Zend framework2 是否使用AJAX在ZF2中包含js和css,zend-framework2,Zend Framework2,我在ZF2中有一些视图必须包含js和css文件。 我可以这样做,因为: $this->headscript()->appendScript(... 但是,当我使用ajax获得视图结果时,我需要从服务器阵列中获得视图html、css includes和js includes。像这样: array( 'html' => '<div id="timepicker-wrap"></div>', 'js_include' => array(
$this->headscript()->appendScript(...
但是,当我使用ajax获得视图结果时,我需要从服务器阵列中获得视图html、css includes和js includes。像这样:
array(
'html' => '<div id="timepicker-wrap"></div>',
'js_include' => array('/js/timepicker.js'),
'js_eval' => '$("#timepicker-wrap").timepicker()',
'css_include' => array('/css/timepicker.css'),
);
数组(
“html'=>”,
'js_include'=>array('/js/timepicker.js'),
'js_eval'=>'$(“#timepicker wrap”).timepicker(),
'css_include'=>array('/css/timepicker.css'),
);
在我将这些数据提供给客户端之后,我的js库将包括html、js和css
问题是从服务器端的headscript获取所有js和css文件和代码
我必须扩展HeadScript、HeadStyle和InlineScript类,并添加返回所有js和css的函数,对吗?或者我必须做些别的事情?在使用Ajax时,您可以非常轻松地绕过布局,例如: SomeController.php
public function myAction()
{
if($this->getRequest()->isXmlHttpRequest()) {
$this->layout('application/layout/ajax-layout');
}
return new ViewModel();
}
application/layout/ajax-layout.phtml
<?php echo $this->content ?>
当您尝试使用Ajax请求访问somecontroller/my/时,基本布局(包括head/js/etc)将不会呈现
但是,当您使用普通请求进行查看时,它将被呈现
还有其他几种方法可以做到这一点,但这可能是最简单的:)您可以使用getContainer()方法从headScript、headStyle和InlineScript获取所有js和css
$this->headScript()->getContainer()->getValue()