Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Galera como poderia fazer um esquema de Ajax com o Zend, assim:
Quando eu seleciono um combo ele altera o valor de um outro combo de acordo com o código do combo de origem, sei que tenho que receber a variavel por post, mas como mandar para o Controller para chamar um método do model que contem a SQL....isso que esta matando...
Fiz assim usando a prototype.js:
No meu controller esta assim:
public function populapostoAction(){
//O que devo colocar aqui...?
}
Na visão:
<script>
function PopulaPosto(valor){
url='manterparcela/populaposto.phtml';
pars='acao='+valor;
var myajax = new Ajax.Updater(
'divPosto',
url,
{ method: 'post',
parameters: pars
}
);
}
</script>
<div id="divPosto">
<select name="posto" class="select">
<option value="000" selected> Selecione </option>
</select>
</div>
E no populaposto.phtml esta assim:
<?php
$valor = $_POST["acao"];
?>
<select name="posto">
<option value="01">AAAA</option>
<option value="02">BBBB</option>
</select>
Mas o método do model esta assim:
public function populaComboPosto($valor){
$config = Zend_Registry::get('config');
$db = Zend_Db::factory($config->database);
Zend_Db_Table::setDefaultAdapter($db);
$sqlPosto = "SELECT p.cmpCOPosto,
p.cmpNOPosto
FROM
tblAcaoPosto ap
JOIN
tblAcaoOrcamentaria a
ON
a.cmpCOAcaoOrcamentaria = ap.cmpCOAcaoOrcamentaria
JOIN
tblPosto p
ON
p.cmpCOPosto = ap.cmpCOPosto
WHERE
ap.cmpCOAcaoOrcamentaria = '$valor'
ORDER BY
p.cmpNOPosto";
$result = $db->fetchAll($sqlPosto);
return $result;
}
Mas como fazer o valor ser passado pelo controller?
Carregando comentários...