$('#mySelectBox option'). each(function() { if ($(this). isChecked()) alert('this option is selected'); else alert('this is not'); });
Use the tagName property to check if an element is a select dropdown, e.g. if (select. tagName === 'SELECT') {} .
if your wanting to use jQuery for this, try the following code. $('select option[value="1"]'). attr("selected",true);
jQuery select() Method The select event occurs when a text is selected (marked) in a text area or a text field. The select() method triggers the select event, or attaches a function to run when a select event occurs.
While I'm not sure about exactly what you want to accomplish, this bit of code worked for me.
<select id="mySelect" multiple="multiple">
<option value="1">First</option>
<option value="2">Second</option>
<option value="3">Third</option>
<option value="4">Fourth</option>
</select>
<script type="text/javascript">
$(document).ready(function() {
if (!$("#mySelect option:selected").length) {
$("#mySelect option[value='3']").attr('selected', 'selected');
}
});
</script>
No need to use jQuery for this:
var foo = document.getElementById('yourSelect');
if (foo)
{
if (foo.selectedIndex != null)
{
foo.selectedIndex = 0;
}
}
This question is old and has a lot of views, so I'll just throw some stuff out there that will help some people I'm sure.
To check if a select element has any selected items:
if ($('#mySelect option:selected').length > 0) { alert('has a selected item'); }
or to check if a select has nothing selected:
if ($('#mySelect option:selected').length == 0) { alert('nothing selected'); }
or if you're in a loop of some sort and want to check if the current element is selected:
$('#mySelect option').each(function() {
if ($(this).is(':selected')) { .. }
});
to check if an element is not selected while in a loop:
$('#mySelect option').each(function() {
if ($(this).not(':selected')) { .. }
});
These are some of the ways to do this. jQuery has many different ways of accomplishing the same thing, so you usually just choose which one appears to be the most efficient.
lencioni's answer is what I'd recommend. You can change the selector for the option ('#mySelect option:last')
to select the option with a specific value using "#mySelect option[value='yourDefaultValue']
". More on selectors.
If you're working extensively with select lists on the client check out this plugin: http://www.texotela.co.uk/code/jquery/select/. Take a look the source if you want to see some more examples of working with select lists.
Here is my function changing the selected option. It works for jQuery 1.3.2
function selectOption(select_id, option_val) {
$('#'+select_id+' option:selected').removeAttr('selected');
$('#'+select_id+' option[value='+option_val+']').attr('selected','selected');
}
<script type="text/javascript">
$(document).ready(function() {
if (!$("#mySelect option:selected").length)
$("#mySelect").val( 3 );
});
</script>
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With