Prototype nos permite manejar elementos de la página web de una forma muy sencilla. Es por ello que nos es muy útil cuando interactuamos con formularios. En este ejemplo vamos a ver cómo podemos deshabilitar un elemento del formulario. Sin necesidad de deshabilitar todo el formulario, cosa que ya vimos en el pasado.
Lo primero que tenemos que hacer es cargar la librería de Prototype:
<script type="text/javascript" src="prototype.js"></script>
Ahora que tenemos cargada la librería de Prototype pasaremos a crear un formulario. Este será sencillo. Una de las cosas sobre las que tenemos que prestar atención es el dar ID a los elementos del formulario. Ya que el código de Prototype se apoyará en dichos ID.
Veamos cómo será nuestro formulario:
<form id="peticion"> <label for="nombre">Nombre: </label> <input id="nombre" type="text"><br> <label for="apellido">Apellido: </label> <input id="apellido" type="text"><br> <input name="genero" type="radio" value="Hombre">Hombre <input name="genero" type="radio" value="Mujer">Mujer </form>
En concreto, vamos a deshabilitar el campo ‘apellido’. Así que será este el ID que manejemos.
El código de Prototype que nos permite deshabilitar un elemento del formulario utilizará el objeto Form.Element y en concreto el método .disable() (o .enable() si queremos volver a habilitar el elemento del formulario). Así que crearemos un botón que nos permita lanzar dicho código.
<input type="button" value="Deshabilitar Apellido" onclick="Form.Element.disable('apellido');">
Como podéis comprobar, es un código realmente sencillo.