如何停止打开或更改选择菜单窗体
How to stop a select menu form opening or changing?
$('#selectmenu').on('keyup focus mousedown', function(e) {
e.preventDefault();
});
但是当通过按 Tab 选择它时,我可以通过按向上和向下键来更改值。如何停止它?
阻止 Tab 键。
$('/*The Previous Input */').on('keydown', function(e) {
if (e.keyCode == 9) {
e.preventDefault();
}
});
我没有你的HTML,所以我无法测试或集成代码。
您也可以使用disabled="disabled">,我认为这是一个更好的解决方案。
您可以使用 jQuery 的off()
或unbind()
方法:
<select id="dropDown" name="dropDown" style="margin-top: 5px; width: 150px;">
<option value="select">Select </option>
<option value="1">1</option>
<option value="2">2</option>
<option value="All">All </option>
</select>
<button id="stopChange" >Stop</button>
<button id="StartChange" >Start</button>
j查询代码:
$("#stopChange").click(function () {
$("#parSelCategor").unbind("change");
});
$("#StartChange").click(function () {
$("#parSelCategor").bind("change");
});
您可以收听更全局的事件,例如"onchange",并在事件触发时将值更改回前一个值。
禁用选择也可能有效。
编辑:"键控"似乎也是一个好主意。
您可以更改选择框的tabindex
$('#selectmenu').attr('tabindex', -1).on('keyup focus mousedown', function (e) {
e.preventDefault();
});
或者最好的方法是禁用控件
$('#selectmenu').attr("disabled", true);
演示
这是一个解决方案,如果某些变量(stopChange
(为真,则简单地强制选择保持不变。
JS (jQuery(:
var stopChange = true;
var opt = $('option:selected');
$('#selectmenu').on('change', function () {
if (stopChange) {
opt.attr('selected', true);
}
});
这是一个小提琴。
相关文章:
- Jquerymobile-使用javascript创建选择菜单
- 修复选择菜单时的背景图像
- 选择菜单重置为以前选择的选项
- JQueryUI选择菜单-如何添加更多选项
- 预填充选择菜单
- 使用较少代码隐藏和显示选择菜单内容的更好方法是什么?javascript
- 使用下拉选择菜单高亮显示一行表格单元格
- Jquery选择菜单选项在页面刷新时失败
- 选择菜单,将json列表与单数值进行匹配
- 从选择菜单中使用 jQuery 多次渲染部分
- 使用数组中的选项填充选择菜单
- 更改鼠标悬停在选择菜单上的颜色
- 使用jquery克隆一个选择菜单
- 如何在外部文件中创建选择菜单并将其嵌入到html中以显示菜单
- jQuery:将按钮过滤器转换为选择菜单选项
- 添加<td>在选择菜单JQuery中选择选项时
- 选择菜单后自动关闭切换导航菜单
- SQL生成的选择菜单,根据相关值更新文本框
- 如何动态填充DataTables选择菜单
- 如何将变量中的数据加载到Jquery Mobile中的选择菜单中