JavaScript在选择某些选项时触发事件

JavaScript在选择某些选项时触发事件,javascript,events,Javascript,Events,JavaScript激发事件中的一些选项的选择。 示例:我有4个选项1。选择A,2。选项B、3.选项C、4.选项D、选项E,如果我选择选项2或3,则事件应触发。但是,在选择其他选项时不应发生任何事情 Html: var selectElem=document.getElementById'select' var pElem=document.getElementById'p' //当选择一个新的 选择Elem.addEventListener'change',函数{ var指数=selectE

JavaScript激发事件中的一些选项的选择。 示例:我有4个选项1。选择A,2。选项B、3.选项C、4.选项D、选项E,如果我选择选项2或3,则事件应触发。但是,在选择其他选项时不应发生任何事情

Html:

var selectElem=document.getElementById'select' var pElem=document.getElementById'p' //当选择一个新的 选择Elem.addEventListener'change',函数{ var指数=selectElem.selectedIndex; //将该数据添加到 pElem.innerHTML='selectedIndex:'+索引; }

selectedIndex:0

方案A 方案B 备选案文C 方案D 选项E 你提到事件应该触发。 如果将事件视为简单函数调用,则下面的代码工作正常。

如果您真的想触发自定义事件,那么只需在If检查中使用这两行即可

// Create the event
var event = new CustomEvent("name-of-event", { "detail": "Example of an event" });

// Dispatch/Trigger/Fire the event
document.dispatchEvent(event);
为您提供完整的代码:

<html>
    <body>

        <p id="idIndex">selectedIndex: 0</p>

        <select id="idSelect">
            <option selected>Option A</option>
            <option>Option B</option>
            <option>Option C</option>
            <option>Option D</option>
            <option>Option E</option>
        </select>
        </br>

        <script>
            var selectElem  = document.getElementById('idSelect')
            var indexElem   = document.getElementById('idIndex')

            // When a new <option> is selected
            selectElem.addEventListener('change', function() {

                // Get selected index
                var index = selectElem.selectedIndex;

                // Add selected index to the <p>
                indexElem.innerHTML = 'selectedIndex: ' + index;

                // If index selected is your desired index
                if ( index === 2 || index == 3 ) {
                    // Call your desired function here or trigger event
                    console.log("Call the function needed");
                }
            });
        </script>
    </body>
</html>

你能举例说明你在做什么以及哪里出了问题吗?如果我理解正确,但您希望使用某种更改功能,那么请检查当前选定选项的值是否与触发您的此事件的选项相匹配。是的,请提供您的代码。