1

Gridオブジェクトがあり、[(+)New Client]ボタンを追加しました。このボタンをポップアップフォームを開いて、いくつかのフィールドを持つ新しいクライアントを作成します。

Webサイトのコード例を見ましたが、その方法がわかりません(何かを見逃してしまった場合は申し訳ありません)。

これは現在のページコードです:

function page_clients_listing($p){

    $g = $p->add('Grid');
    $g->addColumn('text','first_name');
    $g->addColumn('text','last_name');
    $g->addColumn('inline','telephone');
    $g->addColumn('expander','comments');
    $g->setSource('client');

    $g->addButton('With Icon')->set('Add New Client')->setIcon('Plus');
}

前もって感謝します!

4

1 に答える 1

0

ポップアップまたはダイアログを作成できます。Dialogは、jQueryUIダイアログの実装に基づいています。ポップアップはブロックされる可能性が高く、制御が困難です。

これは実際にはどのオブジェクトでも機能します(ビュー、ボタン、画像、アイコンなどに適用できます)が、ボタンを使用します)。

$b=$g->addButton('Add New Client')->setIcon('Plus');

$b->js('click')->univ()->frameURL($title,$url);
// OR
$b->js('click')->univ()->dialogURL($title,$url);

$ urlは、ほとんどの場合api-> getDestinationURL()によって返されます。他のページが読み込まれ、そのページのスクリプトが評価されます。他のページにいて、ウィンドウを閉じる必要があるとします。

$result = $this->addButton('Close')->js('click')->univ()->closeDialog();

closeDialog()は、最初にフレームを開いたビューを指すjQueryチェーンオブジェクトを返します。結果として、$ result-> hidden();を実行すると 次に、ダイアログを閉じた後、元のボタン(「新しいクライアントの追加」)も非表示になります。

これは、フレーム、リロード、およびカスタムイベントハンドラーで実行できるいくつかの追加のことを示す例です。

http://agiletoolkit.org/example/refresh1

于 2011-04-18T22:38:08.113 に答える