Ver Mensaje Individual
  #4 (permalink)  
Antiguo 27/06/2013, 07:38
NeoAres
 
Fecha de Ingreso: mayo-2013
Mensajes: 68
Antigüedad: 11 años
Puntos: 0
Respuesta: JSP y javascript

Cita:
Iniciado por NeoAres Ver Mensaje
Tengo una función script que trata de controlar que no se elija los mismos valores entre varios grupos de 2 <select> al dar al input submit, pero resulta que el número de grupos <select> puede variar, lo cual, la función script debe ser flexible a controlar que no se repitan los valores de los grupos <select> que haya.

El número de <select> depende del número de adultos que se haya guardado en Java (numadults), y para cada adulto hay un asiento definido por la fila y columna. Se deduce que un adulto no puede tener el mismo asiento que otro.


Resulta que al cargar la página jsp de la función el navegador dice
"¡oh no! se ha producido un error al mostrar esta web" (sí, es chrome),
cuando quito la función la página roda bien, pero sin el control xD

¿Sugerencias?

Código:
        <script>
            function check(form)
            {
                <%
//Con este primer for selecciono un numero adulto que lo diferencia de los demas
                    for(int i=1;i<=numadults;i++)
                    {
//Con este segundo for seleccionaré el adulto con el que se compara al primero
                        for(int j=1;j<=numadults;i++)
                        {
//aqui voy comparando los <select> de cada adulto (i) con cada adulto (j)

// controlando que no se compare con él mismo xD
                            if(j!=i)
                            {
                                out.print("if(form.fileSeat"+i+".value==form.fileSeat"+j+".value && form.colSeat"+i+".value==form.colSeat"+j+".value)"+
                                          "{"+
                                                "alert('Two people can not go in the same seat');"+
                                                "return false;"+
                                          "}");
                            }
                        }
                        out.print("return true;");
                    }
                %>
            }
        </script>
De esta manera se escribe dinámicamente la función script, pero ocurre el problema dicho

Edito.