Allow user to reselect already selected option
by mark serbol
HTML
<select>
<option value="red">RED</option>
<option value="blue">BLUE</option>
<option value="green">GREEN</option>
</select>
<input/>
JavaScript
var $select = $('select');
$select.click(function(){
var $this = $(this);
if ($this.hasClass('open')) {
alert($this.val());
$this.removeClass('open');
}else {
$this.addClass('open');
}
})
$select.blur(function(){
$(this).removeClass('open');
});
$(document).click(function(e){
if (!$select.is(e.target)){
$select.removeClass('open');
}
});