Como se puede hacer que los campos select y checkbox sean de solo lectura?. Ojo, no desabilitarlos, sino que no se pueda modificar el valor seleccionado.
En un campo text sería con readOnly pero en estos campos como hay que montarselo?
| |||
Hola, puedes probar a deshabilitarlos, que siempre sirve de sólo lectura <input type="checkbox" checked="true" disabled="true" /><br> <SELECT NAME="seleccion" disabled="true"> <OPTION>Si <OPTION>No <OPTION>Regular </SELECT> Un saludo. |
| ||||
He encontrado este código que soluciona el problema en IE: <select onfocus="this.origValue=this.value" onchange="this.value=this.origValue"> <option value="1">uno</option> <option value="2">dos</option> <option value="3" selected>tres</option> </select> Además tiene la ventaja de que puedes desplegar el select y ver todas las opciones pero aunque cambies de opción siempre queda la que estaba seleccionada. |
| |||
Respuesta: campos select y checkbox de solo lectura tengo el mismo problema, quiero que mi checkbox sea solo lectura para no deshabilitarlo, osea que si ya esta seleccionado que conserve su seleccion pero el usuario no pueda modificarlo (desseleccionarlo), pero veo que nadie responde, ahora lo que hare es una funcion que verifíque si ya esta seleccionado y adevertir que no se debe de desseleccionar, y si le dan clic buelva a seleccionarlos automaticamente, vere si funciona. no creo que vuelva a responder aqui en este foro pero si les interesa saber si me funcionao y lo resolvi, pregunten y vendre a decirles como me fué... |
| ||||
Respuesta: campos select y checkbox de solo lectura Pues para el caso del checkbox aquí hay un concepto. A lo mejor quieren inventar un checkbox de solo lectura porque el desabilitado no se ve muy bien que digamos. Podríamos cambiarle el estilo de los checkbox deshabilitados y entonces se verían bien, pero si un usuario intenta checkear o descheckear un checkbox que aparentemente no está deshabilitado y no se puede, pues eso podría confundir. Por algo el estilo de deshabilitado es distinto, para indicar que no se puede cambiar su estado. Forzar que siempre se vea como habilitado y sin embargo no lo sea es desnaturalizarlo. Lamentablemente no es posible cambiar el estilo de un checkbox, al menos no en todos los navegadores, así que para eso se puede utilizar un poco de JavaScript. <input type="checkbox" onclick="event.preventDefault();" /> No lo aconsejo, pero así se puede lograr. |