Get select element value on event using pure JavaScript

后端 未结 3 828
自闭症患者
自闭症患者 2021-01-02 00:51

I want to get the value of a select element when the select element is clicked! I want to do it without an onchange attribute in the HTML.

I would like

相关标签:
3条回答
  • 2021-01-02 01:30
    ​document.getElementById('test').onchange = function() {
        alert(this.options[this.selectedIndex].val​​​ue);
    };​
    

    Does the above the work?

    Edit:

    Edited to reflect your select id's etc.

    var select_element = document.getElementById('product-form-user-enquiry-type');
    
    select_element.onchange = function(e){
        if (!e)
            var e = window.event;
        var svalue = this.options[this.selectedIndex].value;
        alert( svalue );
    }​
    

    See it working at: http://jsfiddle.net/gRoberts/4WUsG/

    0 讨论(0)
  • 2021-01-02 01:49

    A solution that will work with all browsers (including IE8) :

    var select_element = document.getElementById('product-form-user-enquiry-type');
    
    select_element.onchange = function() {
        var elem = (typeof this.selectedIndex === "undefined" ? window.event.srcElement : this);
        var value = elem.value || elem.options[elem.selectedIndex].value;
        alert(value);
    }​
    
    0 讨论(0)
  • 2021-01-02 01:57

    .onchange = function() { ... } seems to overwrite other handlers, so I use addEventListener("change", function() { ... })

    0 讨论(0)
提交回复
热议问题