Aupa! A ver si alguien sabe cómo podría solucionar esto:

Desde este ZPT en zope 2.11 se llama al script python
corpus_egitura_hiztegia que devuelve un diccionario python compuesto
por:{palabraclave:listacorrespondiente}. Al cargar el ZPT quedan dos combos:
en uno la lista entera de claves del diccionario y en el otro la lista que
incluye la lista correspondiente a la primera clave (<option
tal:repeat="item python: emaitza.get(emaitza.keys()[0])").

<html>

  <head>

    <script type="text/javascript" src="java_scriptak/jquery"></script>

    <script type="text/javascript" src="java_scriptak/combos"></script>

  </head>

 <body>
     <div tal:define="path
string:/home/aritz/zopedirektorioa/Extensions/corpusak.xml;
                emaitza
python:here.kanpo_metodoak.corpus_egitura_hiztegia(path)">
     <select id="primer-select">
     <option tal:repeat="item python: emaitza.keys()"
     tal:attributes="id python: item"
      tal:content="python: item">elemento</option>
     </select>
    <select id="segundo-select">
        <option tal:repeat="item python: emaitza.get(emaitza.keys()[0])"
    tal:attributes="id python: item"
    tal:content="python:item">elemento</option>
   </select>
 </div>

  </body>
</html>

Todo correcto.

El problema lo tengo ahora, al cambiar una opción del primer combo (lista
claves) debería en el segundo aparecer su lista correspondiente. Esto se
realiza mediante este JS ("java_scriptak/combos") que analiza cual es el
value seleccionado en el primer combo:

$(document).ready(function(){

    $('#primer-select').change(function(){


$('#segundo-select').load('valores-segundo-combo?value='+this.value);

    });

});

El encargado de actualizar el segundo combo es el siguiente ZPT, que recoje
el "value" envíado por el JS:

<tal:block define="value request/value">
<div tal:define="path
string:/home/aritz/zopedirektorioa/Extensions/corpusak.xml;
                emaitza
python:here.kanpo_metodoak.corpus_egitura_hiztegia(path)">
<option tal:repeat="item python: emaitza.get(value)"
   tal:attributes="id python:item"
    tal:content="python:item">elemento</option>
</div>
</tal:block>

El problema es que al actualizar el segundo combo este queda con una única
opción que es toda la lista correspondiente metida en bloque. Es decir, todo
como si fuese un string gigante. Es decir, no divide en una opción por
elemento de la lista resultante. No tengo ni idea de qué puede ser,
agradecería cualquier tipo de ayuda...

-- 
Aritz Maeztu



-- 
Aritz Maeztu
_______________________________________________
Plone-ConoSur mailing list
[email protected]
http://lists.plone.org/mailman/listinfo/plone-conosur

Responder a