Select v datagridu

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
ondrique
Člen | 16
+
0
-

Ahoj,

v Datagridu bych potřeboval zobrazit select pro výběr konkrétní varianty produktu, přičemž při změně by se spustila definovaná akce.

Mám to zatím takto (a nefunguje to :) – form a select se zobrazí, ale již bez options)

<?php
	$grid = new DataGrid;
	...
	$grid['id']->formatCallback[] = array($this, 'formatVariants');
	..
?>

a funkce formatVariants:

<?php
    public function formatVariants($value) {

        $result = dibi::query('select * from shop_variants where product=%i order by variant', $value);

        $output = '';

        $output .= "<form method=\"post\" action=\"".$this->link('default')."\">";
        $output .= "<select name=\"variants\">";
        $output .= '<option value="">Vyberte variantu</option>';

        foreach ($result as $row){
            $output .= '<option value="'.$row['id'].'">'.$row['variant'].' - '.$row['shoppriceVAT'].' Kč</option>';
        }

        $output .= "</select>";
        $output .= "</form>";

        return $output;


    }
?>

Je možné očekávaného nějak (jednoduše) docílit ?

Děkuji!

(PHP 5.2.8, Nette 0.9.2)

Editoval ondrique (14. 12. 2009 17:29)