Ich habe eine Dropdown-Box. Ich möchte diesen Wert erhalten, indem ich auf Option oder Änderung klicke. Beispiel: Wenn ich einen Wert kontinuierlich zweimal zweimal einzeln auswähle, erhalte ich nicht den Wert, den ich zum ersten Mal erhalte.

Wie kann ich bei jedem Optionsklick einen Wert erhalten?

Js:

$("#ddrp1").on("change", function() {
 alert(this.value); 
});

HTML:

<select id="ddrp1">
<option value="">Select an option</option>
<option value="Option 1">Option 1</option>
<option value="Option 2">Option 2</option>
<option value="Option 3">Option 3</option>
<option value="Option 4">Option 4</option>
<option value="Option 5">Option 5</option>
</select>

JSfiddle: http://jsfiddle.net/LwwFL/309/

0
SANSCLAW 19 Apr. 2018 im 11:55

3 Antworten

Beste Antwort

Dies ist Ihre Lösung, die auch dann funktioniert, wenn der Auswahlwert nicht geändert wird (gleiche Option angeklickt):

$("#ddrp1").mouseup(function() {
    var isOpen = $(this).data("isopen");

    // only when mouseup event is called and select is still open
    if (isOpen) {
        alert($(this).val());
    }

    $(this).data("isopen", !isOpen);
});

JSFiddle: https://jsfiddle.net/benjib/q42tj0bw/

0
Benjamin Bur 20 Apr. 2018 im 06:55

Ändern Sie einfach onchange in on jsfiddle

<select id="ddrp1">
    <option value="">Select an option</option>
    <option value="Option 1">Option 1</option>
    <option value="Option 2">Option 2</option>
    <option value="Option 3">Option 3</option>
    <option value="Option 4">Option 4</option>
    <option value="Option 5">Option 5</option>
</select>

$("#ddrp1").click( function() {
   alert(this.value); 
});
0
Vijay Makwana 19 Apr. 2018 im 11:01

Versuchen Sie dies, es funktioniert für mich

Html: -

 <select id="ddrp1" class="form-control" onchange="DemoEvent(this.value)">
        <option value="">Select an option</option>
        <option value="Option 1">Option 1</option>
        <option value="Option 2">Option 2</option>
        <option value="Option 3">Option 3</option>
        <option value="Option 4">Option 4</option>
        <option value="Option 5">Option 5</option>
    </select>

Javascript: -

 var array = [];
    function DemoEvent(val) {
        array.push(val);
        for (i = 0; array.length > i;i++){
            if (array[i] != val) {
                alert();
            }
        }        
    }
0
kalai 19 Apr. 2018 im 10:24