2016-12-05 15 views
1

私はアジャイルツールキット4.3.2を使用しています。私はフォームを含む仮想ページを持っています。アジャイルツールキットの仮想ページからHTMLを取得する方法

私はボタン作成:

$this->button = $this->addButton('') 
      ->setAttr('title', 'Show Virtual Page'); 

をそして、私は、このボタンに仮想ページをバインドさ:

$vp = $this->button->add('VirtualPage', $size)->bindEvent('Show Virtual Page', 'click'); 

私が欲しいものは、ボタンを押さずに仮想ページのHTMLを取得することです。どうやってやるの?後でレンダリングするためにHTMLを変数に入れて別の場所に渡したいとします。

ボタンを押さずに仮想ページのHTMLを取得する方法を教えてください。私はページが読み込まれた後にコンテンツを持っていたい。どうやってやるの?

+0

私はあなたがボタンにVirtualPageを追加する必要があります理由は表示されません。あなたが達成しようとしていることをより詳細に説明できますか? – DarkSide

+0

私はあなたの答えに対する答えとしてこの質問に答えました。 – Pascut

答えて

0

これは、ページにボタンを追加することができますし、そのボタンをクリックすると、そのダイアログでは、あなたが望む任意のコンテンツを使用して仮想ページが表示されますこれで開きます方法の例です:

$b = $page->add('Button')->set('Open popup'); 
$vp = $b->add('VirtualPage') 
    ->bindEvent('My Cool Title','click') 
    ->set(function($page){ 
     $page->add('LoremIpsum'); 
    }); 

私はないですなぜあなたはそのVirtualPageのHTMLを取得したいと思いますか?とにかくHTMLコードで直接作業することを避けなければなりません:)

とにかく、このケースでは、ボタンがクリックされていない間にVirtualPageは全くレンダリングされません。

いくつかのケースでは、あなたが使用しようとすることができ$vp->getPage()->getHTML();

+0

私はポップアップ(モーダル)でカスタムフォームを持っています。私は後でそれを表示するために、そのモーダルから変数にHTMLをコピーしたいと思います。コード:$ vp-> getPage() - > getHTML();空のHTMLと空のheadタグとbodyタグを表示します。 – Pascut

+0

「...後で表示する」とはどういう意味ですか?後でいつですか? VirtualPageは、フォームまたは単純なビューではないページです。特定のURL($ vp-> getURL()を参照)で呼び出された場合、アプリケーションの元のページが独自の出力に置き換えられます。 – DarkSide

+0

あなたはここにいます。それは良い解決策ではありません。私の実際の問題は、ページ上にマニュアルを表示するためにフォームHTMLを取得するためのソリューションがないことです。たとえば、私はページ上の各グリッドの列のためのフォームをレンダリングしています。 – Pascut

関連する問題