No se, la verdad he trabajado muy poco con Prototype, y en particular
con Observe...ahora habiendo trabajado mucho, muchisimo con JS, te
recomendaría que si la cosa empieza a volverse un poco mas compleja
dejes de usar el ajaxHelper y escribas código JS "a mano". Para esto
la libreria jQuery es de las mejoras herramientas.
Saludos,
Pablo
On 8/1/07, [EMAIL PROTECTED] <[EMAIL PROTECTED]> wrote:
>
> Bueno... problema solucionado... TODO el problema era ese segundo
> "id_iva" que no tenía nada que hacer dentro del INPUT... pero que ni
> de lejos lo vi o sospeché que era el problema...
>
> Por cierto, ahora que todo funciona, veo que el Updater/ObserveField
> no es muy economizador de recursos... cada vez que me muevo en la
> lista del SELECT, hace una actualizacion completa. Lo que en este caso
> quiere decir una lectura de BD...
> Supongo que haciendo un onChange esto se evitaría... ¿Como se le
> indica esto en el ObserveField ??
>
> Gracias nuevamente!!
>
>
> On 1 ago, 18:42, "[EMAIL PROTECTED]" <[EMAIL PROTECTED]> wrote:
> > Mier*daaa...
> >
> > Uno de tus puntos es la clave de todos mis problemas....
> >
> > * Hay dos elementos con id_iva (el span y el input dentro)?
> >
> > cuatro ojos ven mas que dos!!!! GRACIAS!!
> >
> > Todavía no hice muchas pruebas pero el problema es que la primera vez
> > funciona porque el id_iva es unico, pero luego hay 2 id_iva, uno que
> > es el span y otro dentro del input.
> >
> > Que feo haber estado tan trabado por semejante tontería!
> >
> > Muchisisismas gracias!
> >
> > On 1 ago, 18:29, "Pablo Viojo" <[EMAIL PROTECTED]> wrote:
> >
> > > Preguntas:
> >
> > > * Existe el formulario con id = 'formulario_id' conteniendo el select
> > > GastoProveedorId ?
> > > * Hay dos elementos con id_iva (el span y el input dentro)?
> > > * En la consola de firebug te aparecen errores?
> > > * Que se envia y que se recibe al hacer la llamada ajax (pestañas
> > > header, post, response)? Puedes postear esto ?
> >
> > > Saludos, Pablo
> >
> > > On 8/1/07, [EMAIL PROTECTED] <[EMAIL PROTECTED]> wrote:
> >
> > > > Aqui va:
> >
> > > > <select id="GastoProveedorId" name="data[Gasto][proveedor_id]">
> > > > <option value=""/>
> > > > <option value="14">CDMon</option>
> > > > <option value="11">Cuota autónomo</option>
> > > > <option value="20">Gas Natural</option>
> > > > <option selected="selected" value="8">Iberdrola (electricidad)</
> > > > option>
> > > > <option value="17">Informática - Ecotoner</option>
> > > > <option value="12">Librería</option>
> > > > <option value="9">Ono (teléfono+internet)</option>
> > > > <option value="21">Transporte - Renfe</option>
> > > > <option value="15">varios</option>
> > > > <option value="10">Vodafone (móvil)</option>
> > > > </select>
> > > > <script type="text/javascript">
> > > > new Form.Element.Observer('GastoProveedorId', 0, function(element,
> > > > value) {new Ajax.Updater('id_iva','/contabilidad/gastos/
> > > > get_proveedor', {asynchronous:true, evalScripts:true, parameters:$
> > > > ('formulario_id').serialize(true), requestHeaders:['X-Update',
> > > > 'id_iva']})})
> > > > </script>
> >
> > > > ...
> >
> > > > <span id="id_iva"><input id="id_iva" type="text" value="16" size="2"
> > > > name="data[Gasto][iva]"></input>%</span>
> >
> > > > Por ejemplo el parameters:$('formulario_id').serialize(true), se lo
> > > > he agregado hace poco porque mirando por allí alguien dijo algo de
> > > > eso... pero no cambia nada.
> >
> > > > Estoy mirando la consola de Firebug y que la llamada desde JS se hace,
> > > > el código PHP de get_proveedor se ejecuta siempre que cambio un valor
> > > > del Select, pero en pantalla no aparece nada. Solo en la consola. ¿Que
> > > > significa esto?
> >
> > > > On 1 ago, 16:14, "Pablo Viojo" <[EMAIL PROTECTED]> wrote:
> > > > > Puedes poner todo el codigo "generado" o sea el HTML como se ve en el
> > > > > navegador, y el código Javascript ( si no esta en el html) ?
> >
> > > > > Saludos, Pablo
> >
> > > > > On 8/1/07, [EMAIL PROTECTED] <[EMAIL PROTECTED]> wrote:
> >
> > > > > > Lo raro de todo esto es que he agotado todos mis recursos de probar
> > > > > > cosas e investigar... asi que lo mas probable es que se trate de un
> > > > > > error conceptual mio porque lo que intento hacer es de una simpleza
> > > > > > apabullante... y me molesta muchisimo estar perdiendo tanto tiempo
> > > > > > detrás de esto. :(
> >
> > > > > > On 31 jul, 21:10, "[EMAIL PROTECTED]" <[EMAIL PROTECTED]> wrote:
> > > > > > > El selectTag no se toca, simplemente al desplegar la lista y
> > > > > > > seleccionar otro valor, con ese valor leer una BD y asignar un
> > > > > > > campo a
> > > > > > > otro dato del formulario.
> >
> > > > > > > Aquí va algo del codigo:
> >
> > > > > > > VISTA
> > > > > > > <form....
> > > > > > > .. campos varios...
> > > > > > > <?php
> > > > > > > echo $html->selectTag('Gasto/proveedor_id', $proveedores,
> > > > > > > null, null,
> > > > > > > null, true );
> > > > > > > echo $ajax->observeField('GastoProveedorId',
> > > > > > > array('url'=>'get_proveedor', 'update'=>'id_iva', 'frequency' =>
> > > > > > > 0 ) );
> > > > > > > ?>
> > > > > > > <span id="id_iva"><?php echo $html->input('Gasto/iva',
> > > > > > > array('size' =>
> > > > > > > 2, 'id'=>'id_iva') ).'%' ?></span>
> > > > > > > .. campos varios...
> > > > > > > ... submit
> > > > > > > </form>
> >
> > > > > > > CONTROLADOR
> > > > > > > function get_proveedor()
> > > > > > > {
> > > > > > > // obtener los datos del proveedor
> > > > > > > $proveedor = $this->Proveedor->read( null,
> > > > > > > $this->data['Gasto']
> > > > > > > ['proveedor_id'] );
> > > > > > > $this->data['Gasto']['iva'] =
> > > > > > > $proveedor['Proveedor']['iva'];
> > > > > > > $this->layout="ajax";
> >
> > > > > > > }
> >
> > > > > > > Supongo que algo estoy haciendo mal... porque esto que quiero
> > > > > > > hacer se
> > > > > > > supone que es una tontería de simple... pero ya he agotado todo
> > > > > > > lo que
> > > > > > > se me ocurría... :'(
> >
> > > > > > > On 31 jul, 15:25, "Pablo Viojo" <[EMAIL PROTECTED]> wrote:
> >
> > > > > > > > Se actualiza el propio selectTag? puedes postear el codigo?
> >
> > > > > > > > Saludos,
> > > > > > > > --
> > > > > > > > Pablo Viojo
> > > > > > > > [EMAIL PROTECTED]://pviojo.net
> >
> > > > > > > > On 7/31/07, [EMAIL PROTECTED] <[EMAIL PROTECTED]> wrote:
> >
> > > > > > > > > Soy novato con AJAX...
> >
> > > > > > > > > Tengo un $html->selectTag y un $ajax->observeField que
> > > > > > > > > funcionan bien,
> > > > > > > > > pero SOLO una vez!!
> >
> > > > > > > > > Lo he revisado varias veces y no encuentro el error, quizás
> > > > > > > > > estoy
> > > > > > > > > errando en la manera de hacerlo.
> >
> > > > > > > > > La idea es que selecciono un valor de una lista (selectTag ),
> > > > > > > > > que al
> > > > > > > > > cambiar lee de una bd y se actualiza un valor. Es algo muy
> > > > > > > > > simple que
> > > > > > > > > salió bien a la primera, pero que tengo ese problema que solo
> > > > > > > > > lo hace
> > > > > > > > > una vez... luego al seleccionar otro valor del selectTag ya
> > > > > > > > > no hace
> > > > > > > > > nada...
> >
> > > > > > > > > ¿Donde puede estar el error??
> >
> > > > > --
> > > > > Pablo Viojo
> > > > > [EMAIL PROTECTED]://pviojo.net
> >
> > > --
> > > Pablo Viojo
> > > [EMAIL PROTECTED]://pviojo.net
>
>
> >
>
--
Pablo Viojo
[EMAIL PROTECTED]
http://pviojo.net
--~--~---------~--~----~------------~-------~--~----~
Has recibido este mensaje porque estás suscrito a Grupo "CakePHP-es" de Grupos
de Google.
Si quieres publicar en este grupo, envía un mensaje de correo
electrónico a [email protected]
Para anular la suscripción a este grupo, envía un mensaje a [EMAIL PROTECTED]
Para obtener más opciones, visita este grupo en
http://groups.google.com/group/CakePHP-es?hl=es.
-~----------~----~----~----~------~----~------~--~---