2011-04-18 2 views
1

나는 Grid 객체를 가지고 있는데, [(+) New Client] 버튼을 추가했다. 팝업 폼을 열어서 몇 개의 필드로 새로운 클라이언트를 생성하고 싶다."New xxx"팝업을 만드는 방법은 무엇입니까?

웹 사이트의 코드 예제를 살펴 보았지만 수행 방법을 찾지 못했습니다 (미안하지만 놓친 경우).

이 현재 페이지 코드 : 사전에

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'); 
} 

감사합니다!

답변

0

팝업 또는 대화 상자를 만들 수 있습니다. 대화 상자는 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

: 여기

핸들러를 다시로드 및 사용자 정의 이벤트, 당신은 프레임과 함께 할 수있는 몇 가지 추가를 보여주기 위해 예이다

관련 문제