Uso de mootols getElements ('[seleccionado] para encontrar si se selecciona alguna opción

StackOverflow https://stackoverflow.com/questions/4833124

Pregunta

¿Alguien puede ayudarme a encontrar si hay alguna opción seleccionada? Actualmente tengo esto

 var Selected = $$('myslected_id').getElements('[selected]') ;
 if(Selected==null){
       $('selectedresult').set('text','Nothing Selected');
 }else{
       $('selectedresult').set('text','Something Selected');
 }


<div id="selectedresult"></div>


<select id="myslected_id" name="myslected_name"  multiple="multiple">

 <optgroup label="mylabel">
  <option value="1">Value1</option>
  <option value="2" selected="selected">Value1</option>
                <option value="3">Value2</option>
 </optgroup>
</select>

Formulario actual seleccionar debe emitir algo seleccionado

¡Gracias!

¿Fue útil?

Solución

En primer lugar, escribiste mal 'myselected_id' en tu <select>

<select id="myselected_id" name="myselected_name"  multiple="multiple">

 <optgroup label="mylabel">
  <option value="1">Value1</option>
  <option value="2" selected="selected">Value1</option>
  <option value="3">Value2</option>
 </optgroup>
</select>

Sección de Mootools

var Selected = $$('#myselected_id option[selected]');

if (Selected.length == 0) {
    $('selectedresult').set('html', 'nothing selected');
} else {
    $('selectedresult').set('html', 'Something Selected');
}

Aquí está el JsfiddleEsto atraerá todos los elementos de opciones seleccionados. Su comprensión del uso de $$ no es correcta. Lea esta sección. Además, una matriz vacía no es igual a NULL en JavaScript.

Mootols 1.2.5 elemento doc

Otros consejos

Creo que estarías mejor usando el ser seleccionado método. Obtiene ... las cosas seleccionadas. :)

¡Gracias Kyjy112! Yo también financié otra forma, pero la tuya es más corta, sí, todavía estoy mezclando la matriz PHP con JS, Beginer, esto es lo que se me ocurrió VAR

MySelection = $('myselectid');
    MySelection.addEvent('domready', function(){//domready to use on load
    if(MySelection.getElement("[selected]")) {
        //$("oresultdiv").set("text",  MySelection.getElement(":selected").text)
        $("resultdiv").set("text", "Something")
}else {
        $("resultdiv").set("text", "nothing")
}
}); 
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top