如何创建“ New xxx”弹出窗口?

| 我有一个Grid对象,并添加了[(+)New Client]按钮,我想打开一个弹出表单来创建带有几个字段的新客户端。 我已经看过网站上的代码示例,但是还没有找到方法(抱歉,如果我错过了什么)。 这是当前的页面代码:
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\');
}
提前致谢!
已邀请:
您可以创建一个弹出窗口或一个对话框。对话框基于jQuery UI对话框实现。弹出窗口可能会被阻止,并且难以控制。 这实际上适用于任何对象(您可以将其应用于视图,按钮,图像,图标等),但我将使用按钮。
$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-> hide();然后关闭对话框后,原始按钮(\'添加新客户端\')也将被隐藏。 以下示例显示了您可以对框架,重新加载和自定义事件处理程序执行的其他一些操作: http://agiletoolkit.org/example/refresh1

要回复问题请先登录注册