PHPをJQueryと連携できるようになります。
例によって日本語情報が全然ありませんので手探りで使ってみます。
jQuery自体についてはVer1.4.0以降更新が滞っていますがこちらのサイトが非常にわかりやすいです。
しかしZendX_JQueryが対応しているのは1.5.2以降のようです。残念。
さて、とりあえずインストール…ってところでいきなり躓いた。
なにしろリポジトリに置いてなければPearチャンネルにもない。
どういうことだと探し回ってみればこんなエントリを発見。
パッケージをダウンロードするとextras/libraryディレクトリ内にあるそうな。なんでだよ。
さて、extras/library/ZendX/JQueryは無事に見つかりました。
ついでにZendX/ConsoleとかZendX_Db_Adapter_Firebirdとか見つかりました。
そもそもZendXってなんだ?
http://framework.zend.com/manual/ja/coding-standard.naming-conventions.html
> Zend Framework 追加ライブラリの最上位レベルのディレクトリは "ZendX/" ディレクトリです。
うむ、意味がわからん。
ちなみにリポジトリでは違うディレクトリに置いてありました。
とりあえずPear/Zendディレクトリと並列にZendXディレクトリを配置。
これだけで最低限動作するはずです。
> Warning: Exception caught by form: UiWidgetElement decorator cannot render without a registered view object
お?
実はZendX_JQueryはZend_Viewが必須となっており、ZendX_JQuery単体あるいはZend_Formとだけ組み合わせるということができません。
というかZend_FormがZend_Viewを必要としています。
なんて迷惑な。
後半の出力部分を変更。
jQueryParamsどこいった?
必要な要素が出力されないため、これでは使う意味がありません。
どうも使い方がわかりません。
誰か教えてください。
例によって日本語情報が全然ありませんので手探りで使ってみます。
jQuery自体についてはVer1.4.0以降更新が滞っていますがこちらのサイトが非常にわかりやすいです。
しかしZendX_JQueryが対応しているのは1.5.2以降のようです。残念。
さて、とりあえずインストール…ってところでいきなり躓いた。
なにしろリポジトリに置いてなければPearチャンネルにもない。
どういうことだと探し回ってみればこんなエントリを発見。
パッケージをダウンロードするとextras/libraryディレクトリ内にあるそうな。なんでだよ。
さて、extras/library/ZendX/JQueryは無事に見つかりました。
ついでにZendX/ConsoleとかZendX_Db_Adapter_Firebirdとか見つかりました。
そもそもZendXってなんだ?
http://framework.zend.com/manual/ja/coding-standard.naming-conventions.html
> Zend Framework 追加ライブラリの最上位レベルのディレクトリは "ZendX/" ディレクトリです。
うむ、意味がわからん。
ちなみにリポジトリでは違うディレクトリに置いてありました。
とりあえずPear/Zendディレクトリと並列にZendXディレクトリを配置。
これだけで最低限動作するはずです。
<?php
//インクルード
require_once('Zend/Form.php');
require_once('ZendX/JQuery/Form.php');
require_once('ZendX/JQuery/Form/Element/Slider.php');
require_once('ZendX/JQuery/Form/Element/DatePicker.php');
//Zend_Form
$form = new ZendX_JQuery_Form();
//スライダー
$slider = new ZendX_JQuery_Form_Element_Slider('slider1', array('label' => 'Slider:'));
$slider->setJQueryParams(array('defaultValue' => '75'));
$form->addElement($slider);
//日付選択
$datepicker = new ZendX_JQuery_Form_Element_DatePicker('dp1', array('jQueryParams' => array('defaultDate' => '2007/10/10')));
$form->addElement($datepicker);
//出力
print($form->__toString());
> Warning: Exception caught by form: UiWidgetElement decorator cannot render without a registered view object
お?
実はZendX_JQueryはZend_Viewが必須となっており、ZendX_JQuery単体あるいはZend_Formとだけ組み合わせるということができません。
というかZend_FormがZend_Viewを必要としています。
なんて迷惑な。
後半の出力部分を変更。
//出力
require_once('Zend/View.php');
$view = new Zend_View();
$view->addHelperPath("ZendX/JQuery/View/Helper", "ZendX_JQuery_View_Helper");
print($form->render($view));
<form enctype="application/x-www-form-urlencoded" action="" method="post"><dl class="zend_form"> <dt id="slider1-label"><label for="slider1" class="optional">Slider:</label></dt> <dd> <div options="" id="slider1-slider"></div></dd> <dt id="dp1-label"> </dt> <dd> <input type="text" name="dp1" id="dp1" value=""></dd></dl></form>あれ?
jQueryParamsどこいった?
必要な要素が出力されないため、これでは使う意味がありません。
どうも使い方がわかりません。
誰か教えてください。
PR
トラックバック
トラックバックURL: