Select2关闭事件触发后的聚焦输入
Focusing Input after Select2 close event fire
I read always trigger"改变"-<选择>,即使点击的select2选项已经被选中,由于问题与我的问题非常接近,我在那里问了我的问题,但没有提供答案。我的问题是,我有一个由Select2构建的选择框和一个文本输入。我想要实现的是在Select2关闭之后(无论值是否更改(,我的文本输入变成焦点。
所以我做了一些逻辑上很好的事情如下:
$('#select').select2({placeholder: 'City'});
$('#select')
.on('select2-close', function (e) {
$('#hey').focus();
});
http://jsfiddle.net/sobhanattar/x49F2/8/
正如您所看到的,文本输入不接受焦点。在Select2文档中进行了一些挖掘并检查了文档中的Events部分之后,我意识到在Close事件之后,会自动触发Focus事件。这意味着关闭Select2选择框后,它会自动聚焦。所以我把代码改成这样:
$('#select').select2({placeholder: 'City'});
$('#select')
.on('select2-close', function (e) {
$('#select').blur();
})
.on('select2-blur', function(e) {
$('#hey').focus();
});
而且效果很好。现在我想知道我从Select2事件顺序的理解是正确的,或者我错过了在中间的东西。
看看这里,这个问题已经有了答案:关闭后模糊选择2输入
.on("select2-close", function () {
setTimeout(function() {
$('.select2-container-active').removeClass('select2-container-active');
$(':focus').blur();
$("#elementid").focus();
}, 1);
});
elementid
是在select2 closese之后要聚焦的id元素。我刚刚在链接的答案中添加了$("#elementid").focus();
。
试试这个:
$('#select2').on('select2:close', function (e)
{
// your focus code for element
});
使用css:
html, body {
height:100%
}
相关文章:
- 可以't滚动后聚焦输入
- 检测失焦的击键,聚焦输入并填写(Jquery)
- 使用 javascript 聚焦输入字段
- 如何使用 Angular JS 聚焦输入
- jQuery:触发点击或聚焦输入字段
- 在检票口中刷新页面后重新聚焦输入字段
- 甜蜜警报,在确认后聚焦输入
- 如何使用 Cycle.js 和 RxJS 聚焦输入
- AngularJS中模糊事件后的重新聚焦输入字段
- jQuery表单向导:移动到其他输入并使其滚动到聚焦输入
- 如何改变' displayText '和显示' displayText '当我聚焦输入
- 无法用鼠标聚焦输入字段
- 在聚焦输入时防止手机默认键盘;从展示
- Select2关闭事件触发后的聚焦输入
- 什么是jQuery或javaScript语法,使函数仅在活动/聚焦输入/按钮/文本区域上工作
- JQuery对话框自动聚焦输入字段
- 在IE11中无法使用JavaScript聚焦输入
- 如何仅在桌面浏览器上聚焦输入字段
- HTML5视频聚焦输入设备
- 悬停和/或点击自动聚焦输入字段