Ver Mensaje Individual
  #64 (permalink)  
Antiguo 11/12/2002, 12:44
Avatar de Kaopectate
Kaopectate
Colaborador
 
Fecha de Ingreso: diciembre-2001
Ubicación: Curaçao (Antillas Holandesas)
Mensajes: 3.179
Antigüedad: 22 años, 4 meses
Puntos: 38
64.- Llenar una lista en base a otra lista

P: ¿Como puedo hacer una interfase con la que pueda llenar una lista en base a los elementos de otra lista?

R: [ver ejemplo]

Código PHP:
<html>
 <
head>
  <
script language="javascript">
   var 
aList = new Array("uno""dos""tres""cuatro""cinco""seis""siete""ocho""nueve""diez");
   var 
aIzqu = new Array(truetruetruetruetruetruetruetruetruetrue);
   var 
ijnIzqnDermaxIzqmaxDer;

   
nIzq 0;
   
nDer 0;
   
maxIzq aList.length;
   
maxDer 0;

   function 
agregaTodos(){
    for (
0aList.lengthi++)
      
aIzqu[i] = false;
    
maxIzq 0;
    
maxDer aList.length;
    
nIzq 0;
    
formulario();
   }

   function 
indiceIzqReal(nInd){
    var 
bFin false;
    var 
0;
    var 
= -1;
    for (;!
bFin;){
     if (
aIzqu[i]) j++;
     
bFin = ((== nInd) || (>= aList.length));
     if (!
bFini++;
    }
    return 
i;
   }

   function 
indiceDerReal(nInd){
    var 
bFin false;
    var 
0;
    var 
= -1;
    for (;!
bFin;){
     if (!
aIzqu[i]) j++;
     
bFin = ((== nInd) || (>= aList.length));
     if (!
bFini++;
    }
    return 
i;
   }

   function 
agregaActual(){
    var 
bFin false;
    var 
nInd indiceIzqReal(nIzq);
    
aIzqu[nInd] = false;
    if (
nIzq == maxIzq 1nIzq--;
    
maxIzq--;
    
maxDer++;
    
formulario();
   }

   function 
eliminaActual(){
    var 
bFin false;
    var 
nInd indiceDerReal(nDer);
    
aIzqu[nInd] = true;
    if (
nDer == maxDer 1nDer--;
    
maxIzq++;
    
maxDer--;
    
formulario();
   }

   function 
eliminaTodos(){
    for (
0aList.lengthi++)
      
aIzqu[i] = true;
    
maxIzq aList.length;
    
maxDer 0;
    
nDer 0;
    
formulario();
   }

   function 
primeroIzq(){
    
nIzq 0;
    
formulario();
   }

   function 
primeroDer(){
    
nDer 0;
    
formulario();
   }

   function 
siguienteIzq(){
    if (
nIzq maxIzq 1)
     
nIzq++;
    
formulario();
   }

   function 
siguienteDer(){
    if (
nDer maxDer 1)
     
nDer++;
    
formulario();
   }

   function 
anteriorIzq(){
    if (
nIzq 0)
     
nIzq--;
    
formulario();
   }

   function 
anteriorDer(){
    if (
nDer 0)
     
nDer--;
    
formulario();
   }

   function 
ultimoIzq(){
    
nIzq maxIzq 1;
    
formulario();
   }

   function 
ultimoDer(){
    
nDer maxDer 1;
    
formulario();
   }

   function 
formulario(){
    
with (window.pantalla.document){
     
open();
     
writeln("<html>");
     
writeln(" <head>");
     
writeln(" </head>");
     
writeln(" <body>");
     
writeln("  <form name='formulario'>");
     
writeln("   <table border='0'>");
     
writeln("    <tr>");
     
writeln("     <td>");
     
writeln("      <textarea name='opciones' rows='10'>");
     for (
00aList.lengthi++){
      if (
aIzqu[i]){
       if (
== nIzq)
        
writeln('>>' aList[i] + '<<')
       else
        
writeln(aList[i]);
       
j++;
      }
     }
     
writeln("      </textarea>");
     
writeln("     </td>");
     
writeln("     <td>");
     
writeln("      <table border='0'>");
     
writeln("       <tr>");
     
writeln("        <td>");
     
writeln("         <input type='button' value='>>' onclick='parent.agregaTodos()'>");

     
writeln("        </td>");
     
writeln("       </tr>");
     
writeln("       <tr>");
     
writeln("        <td>");
     
writeln("         <input type='button' value='> ' onclick='parent.agregaActual()'>");

     
writeln("        </td>");
     
writeln("       </tr>");
     
writeln("       <tr>");
     
writeln("        <td>");
     
writeln("         <input type='button' value=' <' onclick='parent.eliminaActual()'>");

     
writeln("        </td>");
     
writeln("       </tr>");
     
writeln("       <tr>");
     
writeln("        <td>");
     
writeln("         <input type='button' value='<<' onclick='parent.eliminaTodos()'>");

     
writeln("        </td>");
     
writeln("       </tr>");
     
writeln("      </table>");
     
writeln("     </td>");
     
writeln("     <td>");

     
writeln("      <textarea name='seleccionados' rows='10'>");
     for (
00aList.lengthi++){
      if (!
aIzqu[i]){
       if (
== nDer)
        
writeln('>>' aList[i] + '<<')
       else
        
writeln(aList[i]);
       
j++;
      }
     }
     
writeln("      </textarea>");

     
writeln("     </td>");
     
writeln("    </tr>");
     
writeln("    <tr>");
     
writeln("    </tr>");
     
writeln("     <td>");
     
writeln("      <table border='0'>");
     
writeln("       <tr>");
     
writeln("        <td>");
     
writeln("         <input type='button' value='Pri' onclick='parent.primeroIzq()'>");
     
writeln("        </td>");
     
writeln("        <td>");
     
writeln("         <input type='button' value='Ant' onclick='parent.anteriorIzq()'>");
     
writeln("        </td>");
     
writeln("        <td>");
     
writeln("         <input type='button' value='Sig' onclick='parent.siguienteIzq()'>");
     
writeln("        </td>");
     
writeln("        <td>");
     
writeln("         <input type='button' value='Ult' onclick='parent.ultimoIzq()'>");
     
writeln("        </td>");
     
writeln("       </tr>");
     
writeln("      </table>");
     
writeln("     </td>");
     
writeln("     <td>");
     
writeln("     </td>");
     
writeln("     <td>");
     
writeln("      <table border='0'>");
     
writeln("       <tr>");
     
writeln("        <td>");
     
writeln("         <input type='button' value='Pri' onclick='parent.primeroDer()'>");
     
writeln("        </td>");
     
writeln("        <td>");
     
writeln("         <input type='button' value='Ant' onclick='parent.anteriorDer()'>");
     
writeln("        </td>");
     
writeln("        <td>");
     
writeln("         <input type='button' value='Sig' onclick='parent.siguienteDer()'>");
     
writeln("        </td>");
     
writeln("        <td>");
     
writeln("         <input type='button' value='Ult' onclick='parent.ultimoDer()'>");
     
writeln("        </td>");
     
writeln("       </tr>");
     
writeln("      </table>");
     
writeln("     </td>");
     
writeln("   </table>");
     
writeln(" </form>");
     
writeln("</body>");
     
writeln("</html>");
     
close();
    }
   }

  
</script>

 </head>
 <frameset rows="100%,*" frameborder="no" border="0" framespacing="0" onload="javascript:formulario()">
  <frame name="pantalla" src="pruDummy.htm" frameborder="no" border="0">
  <frame name="dummy" src="pruDummy.htm">
 </frameset>
</html> 

Última edición por Kaopectate; 24/12/2002 a las 11:26