Tengo un select multiple
Campo de entrada estándar HTML, por ejemplo:¿Cómo se alterna la selección de una opción en una selección múltiple con jQuery?
<select multiple="multiple" size="5" id="mysel" name="countries">
<option value="2">Afghanistan</option>
<option value="4">Aland</option>
</select>
ya que es una selección múltiple, para seleccionar más de un valor que hay que mantener pulsada la tecla CTRL y seleccione los elementos adicionales. Sin embargo, lo que quiero lograr es que:
- Al hacer clic en una opción no seleccionada, ésta se selecciona
- Al hacer clic en la opción seleccionada anula la selección de la misma.
La idea es evitar tener que pulsar la tecla CTRL y cambiar la semántica de uso de este campo de entrada. Los elementos solo deben poder seleccionarse y no seleccionarse al hacer clic (es decir, al alternar entre los estados de selección).
Todavía no he podido implementar esto. El pseudo-código debería verse más o menos así.
- Catch a Click event.
- Compruebe si el elemento al que se hizo clic no estaba seleccionado, luego selecciónelo
- O, si el elemento que se hizo clic fue seleccionado, desáréguelo.
¿Cómo debo implementar esto?
Hola TB, ¡Ohh, gracias Million Times !!!! ¡Estupendo! ¡Esto es lo que quería lograr! ¡¡Muchas gracias!! – tim
Sería más conciso hacer '$ self.prop ('selected',! $ Self.prop ('selected'));'. – nilskp
@nilskp también considera '' '$ self.prop ('selected', function (i, old) {! Old});' '' – MoMolog