Uso Mootools ottengono Elements ( '[selezionato] per trovare se si seleziona l'opzione QUALSIASI
-
27-10-2019 - |
Domanda
Per favore qualcuno può aiutarmi a trovare se non v'è alcuna opzione selezionata Al momento ho questa ??p>
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>
forma attuale selezionare dovrebbe uscita Qualcosa selezionato
Grazie!
Soluzione
Prima di tutto è scritto male 'myselected_id' sul tuo <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>
sezione MooTools
var Selected = $$('#myselected_id option[selected]');
if (Selected.length == 0) {
$('selectedresult').set('html', 'nothing selected');
} else {
$('selectedresult').set('html', 'Something Selected');
}
Questa è la Jsfiddle Questo catturerà tutti gli elementi opzioni selezionate. La vostra comprensione di utilizzo per $$ non è corretto. Si prega di leggere questa sezione. Inoltre, un array vuoto non è uguale a zero in javascript.
Altri suggerimenti
penso che sarebbe meglio usare la getSelected metodo . si arriva ... la roba selezionato. :)
Grazie kyjy112! Finanzio anche un altro modo, ma il vostro è più corta Sì, im ancora mescolando array PHP con js, beginer, questo è quello che si avvicinò con 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")
}
});