Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Eae pessoal,
Estou com dúvidas em relação ao ZendX, como faço para ativar? Atualmente eu estou tentando da seguinte maneira..
class IndexController extends Zend_Controller_Action
{
public function init()
{
$this->view->addHelperPath("ZendX/JQuery/View/Helper", "ZendX_JQuery_View_Helper");
}
e o application.ini
autoloaderNamespaces[] = "ZendX"
e na view eu coloco:
<? echo $this->JQuery(); ?>
Oque era para supostamente me retornar um link com a biblioteca jquery.. Porém não imprime nada..
Sem mais, obrigado.
Obs: Já coloquei a pasta ZendX na library.. --'
Então.. coloquei isso na index.phtml para testar como exemplo, porem não deu certo..
<?php echo $this->doctype(); ?>
<html>
<head>
<?php
$this->headLink()
->prependStylesheet($this->baseUrl() . '/css/smoothness/jquery-ui-1.8.16.custom.css')
->prependStylesheet($this->baseUrl() . '/css/global.css');
?>
<?php echo $this->headLink(); ?>
<?php echo $this->jQuery()->setVersion('1.4.2')->setUiVersion('1.8.16'); ?>
</head>
<body>
<div class="header">
</div>
<div class="content">
<form method="post" action="">
<?php echo $this->datePicker("dp",
'',
array(
'defaultDate' =>
date('Y/m/d', time())));?>
<input type="submit" value="Submit" />
</form>
</div>
<div class="footer">
</div>
</body>
</html>
Ele não quer imprimir a biblioteca do JQuery..
hummm, deu certo usando o Zend Layout, mas eu não quero usar o zend layout, oque será que está acontecendo? :S
Muito simples...
O código PHP é executado de cima para baixo, da esquerda para a direita. No momento que você imprime o jQuery (<?php echo $this->jQuery()) não existe nenhum elemento jQuery criado ainda.
Para resolver você precisa primeiro criar o elemento, adicionar ele ao jQuery (nunca inseri o elemento pelo viewHelper como você fez, sempre criando o formulário no controller ou em classe separada) e só depois imprimir o jQuery.
Carlos Eduardo
Entendi, deu certo aqui quando eu coloquei para imprimir o JQuery no final de tudo..
E como eu faria um form que no meio dele eu imprimo um comando php, eu só sei colocar botões, campos de texto etc.. :S
No caso:
<?php echo $this->datePicker("dp",
'',
array(
'defaultDate' =>
date('Y/m/d', time()))); ?>
Vlws.. =)
Não entendi... Pode explicar melhor o que você tentou fazer e não conseguiu?
Carlos Eduardo
opa..
então, eu tenho o forms.php aonde tenho o script do meu formulário.
class Application_Form_Check extends Zend_Form
{
public function init()
{
// Numero de identificação
$numeroid = new Zend_Form_Element_Text('numberfild');
$numeroid->setRequired(true)->addValidator(new Zend_Validate_Alnum(true));
$this->addElement($numeroid);
// Botão de Envio
$submit = new Zend_Form_Element_Submit('button');
$submit->setIgnore(true)->setLabel('Checar');
$this->addElement($submit);
// Configurações do Formulário
$this->setName('check')->setMethod(self::METHOD_POST)
->setAction($this->getView()->url());
}
}
ai eu chamo ele no meu controller assim:
//--------------------------------------------------------
// Criação do Objeto Formulário
$form = new Application_Form_Check();
// Retirar DD, DT
$form->setElementDecorators(array('ViewHelper','Errors'));
// Retirar DL
$form->setDecorators(array('FormElements', 'Form'));
// Envio para a Camada de Visualização
$this->view->form = $form;
//---------------------------------------------------------
Depois só imprimo na view..
Aprendi a fazer os form dessa maneira.. a minha dúvida é, como eu faria dessa maneira e colocaria um código php tipo esse do jquery no meio da form.
<form method="post" action="">
[b]echo $this->datePicker("dp",
'',
array(
'defaultDate' =>
date('Y/m/d', time())));
[/b]
<input type="submit" value="Submit" />
</form>
Ele só vai imprimir o jQuery quando você usar o ZendX para criar algum elemento de formulário.
Carlos Eduardo