DIV, FORMS y NETSCAPE

Hola xelenco2, estoy aquí comiedome el coco con un problema que me tiene loco :) . Es un formulario en el cual hay divs dentro, actuando como capas para que se muestren o se oculten dependiendo de lo que quieras rellenar y tal... Y dentro de esas capas (DIV) tengo una caja de texto, ¿falep? Bueno, pues para acceder a esa caja de texto es simple, document. Form.cajatexto, pero solo funciona en explorer claro... ¿y en Netscape?
<form>
   <div id=capa1>
      <input type=text name=cajatexto>
   </div>
</form>

Seguro que es una chorrada, pero me tiene loco y tengo que terminar esto cuanto antes :-) muchas gracias.

1 respuesta

Respuesta
1
Seguro que esto que te voy a decir no te gusta un pelo, pero no hay otra.
Netscape tiene una definición de los objetos disferente a Internet Explorer. Por lo tanto hay que crear un código diferente para cada navegador.
ns = (document.layers) ? true: false
ie = (document.all) ? true: false
Con esto que te he puesto podemos saber si es ie (internet Explorer) o ns (Netscape)
Pues hasta aquí bien ahora
Lo jodió :-)
En netscape no se pueden crear elementos inputs en una capa así como así si no que en cada capa (DIV) hay que poner un form, porque muy sencillo netscape interprete cada capa como documentos independientes.
Vale como accedo a los elementos de la siguiente manera
document.nombreCapa.document.form.nombreElemento
El primer document es del documento normal el segundo del documento independiente que interpreta netscape que tiene la capa luego el formulario que te has creado dentro de la capa y por ultimo el elemento.
Y te dirás, joder :-), pero si yo solo quiero un formulario, pues machote la has liado.
No se puede, esa es la mala notica, que se puede hacer al respecto crearte un formulario aparte con inputs que tengan el type hidden y meterle los valores de los elementtos que contienen el resto de formularios que hay pululando por las capas. Al dar al submit coges los valores se los pasas a los hidden y mandas el formulario que tiene los hidden.
Resuelto pero claro nada fácil, los graciosillos del netscape, que se lo saben todo..
Bueno espero que no te rompas mucho la cabeza y para cualquier otra duda aquí me tienes.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas