Zend Frameworkを使用してアプリケーションを構築しました。私はDojoの代わりにJQueryを使うことに決めました。私は、ajaxLinksやdialogContainersのようなものにZendXヘルパーを使用します。できるだけAJAXを動かすようGUIを試してみたい。しかし、私は自分の気持ちを決定するのに苦労します。 ほとんどの場合、ページ全体を再読み込みするのではなく、「ページ」をdialogContainerに読み込む必要があります。たとえば、ユーザーデータなどを変更するためのフォームを含むダイアログが表示されます。Zend Frameworkを使用してAJAXベースのGUIを作成する方法
最初はすべてのページを返しましたが、AJAXリクエストを使用してリクエストされた場合は、別のレイアウトテンプレートを使用してすべての未使用のjavascriptインクルージョンなどを回避しました。これにより、基本的にブラウズ可能なページの1つのバージョンAJAX経由の通常のAND。しかし、私は自分がこれが好きであると確信していません。 Zend ServerのGUIを見ると、彼らはこれをやっているようですが、jsonでエンコードされたデータを返してそのページを構築しているわけではありません。
これに最も適した方法は何ですか。また、取得したページに固有のjavascriptをどのように処理すればよいですか。私は今、そのページのphtmlファイルにすべてのページ固有のjavascriptを持っています。
私が心配しているもう一つのことは、たくさんのダイアログボックスを開いてajax経由でデータを取り込むときに作成されるリソースをどのように追跡するかです。 1つのダイアログを開き、項目のリストを取得したとします。特定のアイテムのモーダルダイアログコンテナポップアップをもう1つクリックすると、ajaxを介して入力されます。しかし、メインページが再ロードされない場合、私はこれが扱いにくくなることがわかります。
私はアヤックス主導のUIをしたいと思う最初の人にはならないような気がするので、コーナーに自分を描く前に正しい方向に向けるようにしてください。 ;)
更新:基本的に、私は文脈のテーマやZendのドキュメントで見つけることができるすべての種類のチュートリアルを試しました。私はいくつかの文書化されていない機能や何かを有効にするために欠場しているに違いないと思う。それが動作しなかったので、私はコードを削除しましたが、私が前に見た例を見つけようとすると、蛇のコードのようなものを試しました。
$ajaxContext = $this->_helper->getHelper('AjaxContext');
$ajaxContext->addActionContext('list', 'html')
->addActionContext('modify', 'html')
->initContext();
そして私は、私は関係なく、それらのすべてが普通の.phtmlファイルのすべての時間をレンダリングすることになったものを他のActionContextsなどが、を追加しようとした以下の
$this->_helper->contextSwitch()
->setContext('html', array(
'suffix' => 'html',
'headers' => array('Content-Type' => 'text/html; Charset=UTF-8'),
)
)
->addActionContext('index', array('html','xml', 'json'))
->setAutoJsonSerialization(true)
->initContext();
のようなものを試してみました。
inquamの場合、/ format/xxxをクエリの末尾に追加することを忘れないでください。そうしないと、コンテキストヘルパーはアクティブになりません。 「普通の」XHRの場合でも、/ format/htmlを指定する必要があります –