3

I have an HTML select list which, when an item is selected, must show different information beneath it. 当通过单击(鼠标)选择选择列表项时触发 onclick 或 JQuery 更改事件,但在用户使用按键(键盘)时不会触发。

知道要观察什么事件以确定所选列表项何时更改吗?

这是一个 BASIC 测试示例:

<select id="mylist" name="mylist">
    <option value="">(none)</option>
    <option value="1">Test 1</option>
    <option value="2">Test 2</option>
    <option value="3">Test 3</option>
</select>

<span id="myspan"></span>

<script type="text/javascript">
    $("#mylist").change(function() {
        $("#myspan").html($("#mylist").attr("selectedIndex"));
    });
</script>
4

3 回答 3

2

select框失去焦点时代码将运行
按 Tab 或单击select外的任意位置)

于 2010-04-21T12:12:16.990 回答
1

当使用键盘快捷键更改项目时,OnChange 事件因浏览器而异。

例如,在 IE 中,使用键盘和鼠标触发事件的方式相同,但在 Firefox 中,要使用键盘触发事件,您需要在选中的项目是好的项目时按Enter 。正如 Gaby 指出的那样,当 <select> 失去焦点(OnBlur - 并且仅当 OnChange 尚未被触发时)也会触发该事件。

它的制作方式...

于 2010-04-21T12:22:52.923 回答
0

如果您更改添加属性,它会起作用:

multiple="multiple"

如果您想要保管箱,我会将“全局”keyup 事件处理程序绑定到 document.body 并在那里做一些魔术。

于 2010-04-21T12:28:27.580 回答