Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

JQuery event to fire when a drop down is selected -- but the value is not changed

I have a dropdown menu that I want to connect a JQuery event to that fires if someone clicks on it but then selects the same option that is already selected.

I've got everything running using the 'change' event but there are cases where it's valid for the user to click the dropdown and reselect the same option. If that occurs I need my event handler to fire.

How can I do this?

like image 945
Kevin Bedell Avatar asked Jun 12 '12 18:06

Kevin Bedell


1 Answers

Try something like below,

Using .click

$(function () {
    var cc = 0;
    $('select').click(function () {        
        cc++;
        if (cc == 2) {
            $(this).change();
            cc = 0;
        }         
    }).change (function () {
        $('#result').append('Changed triggered ');
        cc = -1;
    });     
});

DEMO: http://jsfiddle.net/skram/NAHXP/2/

Or using .focus and .blur

$(function () {
    var ddVal = '';
    $('select').focus(function () {
        ddVal = $(this).val();
    }).blur(function () {
        if (ddVal == $(this).val()) {
            $(this).change();
        }
    }).change (function () {
        $('#result').append('Changed triggered ');
    });       
});

DEMO: http://jsfiddle.net/skram/NAHXP/

like image 182
Selvakumar Arumugam Avatar answered Nov 08 '22 22:11

Selvakumar Arumugam