为什么这些文件不见了



我正在尝试添加带有Zend_Form的jQuery日期选择器。但它给出了两个警告和一个错误。我的样本代码:

$startdate = new ZendX_JQuery_Form_Element_DatePicker( 'startdate' );
$startdate->setLabel('Start Date')
          ->setRequired(true)
          ->setAttrib('size', '10')
          ->setDecorators($formJQueryElements);

错误:警告:include_once(ZendX/JQuery/Form/Element/DatePicker.php)[function.include once]:无法打开流:第146行/usr/local/ZendFramework/library/Zend/Loader.php中没有这样的文件或目录


警告:includeonce()[function.include]:无法打开/usr/local/ZendFramework/library/Zend/Loader.php中的"ZendX/JQuery/Form/Element/DatePicker.php"进行包含(include_path='/opt/lamp/htdocs/framework/students/application/../library:include_path=.:/usr/share/php:/usr/local/ZendFramework/library')


致命错误:在第46行的/opt/lamp/htdocs/framework/Student/application/forms/Student.php中找不到类"ZendX_JQuery_Form_Element_DatePicker"

ZendX是一个额外的库,并没有包含在Zend Framework的所有发行版中。请确保您已从Zend Framework下载页下载了其中一个标题中包含完整的发行版

提取压缩文件后,您会在文件夹extras/library/ZendX中找到ZendX库,将ZendX文件夹复制到您保存当前Zend文件夹的任何位置(不在Zend文件夹中),

在我的案例中,我将Zend Framework库保存在:C:ZendZendServershareZendFrameworklibrary。所以我在这个位置有两个文件夹ZendZendX

ZendZendX在自动加载器中都有默认的名称空间,所以如果将它们存储在同一个地方,如果其中一个工作,另一个也会工作。

或者。。。将两者都放入您的应用程序库中,如:

/application
/library
    /Zend
    /ZendX

这也会起作用。

使用ZendX_JQuery_Form_Element_DatePicker有什么特殊原因吗?我正在使用jquery日期选择器(来自jquery ui包)和一个像这样的普通Zend Form Text元素。。

    // Add start_date element
    $start_date = new Zend_Form_Element_Text('start_date'); 
    $start_date->setLabel('Start Date')
          ->setRequired(true)
          ->setAttrib('class', 'datepicker')
          ->setDecorators($this->elementDecorators);
    $this->addElement($start_date);  

添加"datepicker"类才是真正需要的。这避开了您正在经历的问题——这似乎与ZendX库的使用有关。

我对Zend框架了解不多,但Zend框架是PHP所指的服务器端技术,Jquery是客户端技术。换句话说,Jquery日期选择器工作和Zend框架之间并没有直接的关系。

您必须检查页面的HTML输出,包括使用日期选择器的表单元素和页面中的Javascript包含文件。只需在浏览器中查找页面源,即可查找缺少的内容。

最新更新