jQuery 选择绑定事件到键盘
jQuery Chosen bind events to keyboard
这是我的 HTML 的结构:
<select class="chosen-select" data-placeholder="Choose an color:">
<option value="1">red</option>
<option value="2">blue</option>
<option value="3">green</option>
<option value="4">black</option>
</select>
这里是 javascript 部分,这里展示了绑定点击事件是多么容易:
$(document).on('click', '.active-result', function () {
var color = $(this).text()
})
// do something with color
我已尝试成功绑定到键 up/down 和按键。但 :
这是我的用例:
我需要将事件绑定到 ENTER 键,我尝试将事件绑定到 e.which == 13
并防止默认设置但没有成功。另外我必须提到这段代码应用于 bootstrap Modal.
尝试附加 jQuery 的按键事件:
$(document).on('keydown', '.chosen-select', function (event) {
if ( event.which == 13 ) {
event.preventDefault();
var color = $(this).text();
// do something with color
}
})
这将为您提供颜色并更改按键时下拉菜单的值 - Enter。
$(document).on('keydown', '.chosen-select', function (e) {
if (e.which == 13 )
{
var selectedTarget = $(this).find("option:selected");
alert($(selectedTarget).text());
$(this).val($(selectedTarget).val());
}
});
我能够通过将事件绑定到 chosen( ) 来解决问题:
$(".chosen-select").chosen().keydown ( function (e) {
if (e.which == 13 )
{
var color = $(this).val()
}
});
这是我的 HTML 的结构:
<select class="chosen-select" data-placeholder="Choose an color:">
<option value="1">red</option>
<option value="2">blue</option>
<option value="3">green</option>
<option value="4">black</option>
</select>
这里是 javascript 部分,这里展示了绑定点击事件是多么容易:
$(document).on('click', '.active-result', function () {
var color = $(this).text()
})
// do something with color
我已尝试成功绑定到键 up/down 和按键。但 :
这是我的用例:
我需要将事件绑定到 ENTER 键,我尝试将事件绑定到 e.which == 13
并防止默认设置但没有成功。另外我必须提到这段代码应用于 bootstrap Modal.
尝试附加 jQuery 的按键事件:
$(document).on('keydown', '.chosen-select', function (event) {
if ( event.which == 13 ) {
event.preventDefault();
var color = $(this).text();
// do something with color
}
})
这将为您提供颜色并更改按键时下拉菜单的值 - Enter。
$(document).on('keydown', '.chosen-select', function (e) {
if (e.which == 13 )
{
var selectedTarget = $(this).find("option:selected");
alert($(selectedTarget).text());
$(this).val($(selectedTarget).val());
}
});
我能够通过将事件绑定到 chosen( ) 来解决问题:
$(".chosen-select").chosen().keydown ( function (e) {
if (e.which == 13 )
{
var color = $(this).val()
}
});