0

でjQuery datepickerを追加しようとしていZend_Formます。しかし、2 つの警告と 1 つのエラーが表示されます。私のサンプルコード:

$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]: ストリームを開くことができませんでした: /usr/local/ZendFramework/library/Zend/Loader にそのようなファイルまたはディレクトリはありません。 php 146行目


警告: include_once() [function.include]: インクルードのために 'ZendX/JQuery/Form/Element/DatePicker.php' を開けませんでした (include_path='/opt/lampp/htdocs/framework/students/application/../library: /opt/lampp/htdocs/framework/students/library:include_path = .:/usr/share/php:/usr/local/ZendFramework/library') の /usr/local/ZendFramework/library/Zend/Loader.php に146行目


致命的なエラー: クラス 'ZendX_JQuery_Form_Element_DatePicker' が /opt/lampp/htdocs/framework/students/application/forms/Student.php の 46 行目に見つかりません

4

3 に答える 3

4

ZendX は、Zend Framework のすべてのディストリビューションには含まれていないエクストラ ライブラリです。Zend Framework のダウンロード ページから、タイトルにfullが含まれるディストリビューションの 1 つをダウンロードしたことを確認してください。

圧縮ファイルを解凍すると、フォルダ内のZendXライブラリが見つかります。フォルダを現在のフォルダ (Zend フォルダではなく)を保持している場所にextras/library/ZendXコピーします。ZendXZend

私の場合、Zend Framework Library を次の場所に保持していますC:\Zend\ZendServer\share\ZendFramework\library。したがって、この場所ZendZendX.

ZendどちらもオートローダーにZendXデフォルトの名前空間があるため、それらを同じ場所に保存すると、一方が機能すればもう一方も機能します。

または...次のように両方をアプリケーションライブラリに入れます。

/application
/library
    /Zend
    /ZendX

これもうまくいきます。

于 2012-08-01T02:12:01.170 に答える
1

ZendX_JQuery_Form_Element_DatePickerを使用している特別な理由はありますか?私は(jquery uiパッケージからの)jquery datepickerを、このような通常のZendFormText要素で使用しています。

    // 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ライブラリの使用に関連しているようです。

于 2012-08-01T08:07:48.110 に答える
0

Zend フレームワークについて詳しくはわかりませんが、Zend Framework は PHP が意味するサーバー側のテクノロジであり、Jquery はクライアント側のテクノロジです。つまり、Jquery の日付ピッカーの動作と Zend Framework の間に直接的な関係はありません。

日付ピッカーで動作するフォーム要素を含むページの HTML 出力と、ページ内の Javascript インクルード ファイルを確認する必要があります。ブラウザでページのソースを見て、足りないものを探してください。

于 2012-07-31T19:20:39.863 に答える