laravel-admin1.* select2下拉单选组件搜索框无法输入问题解决

简介: laravel-admin1.* select2下拉单选组件搜索框无法输入问题解决

问题及原因


问题:这种情况主要出现在用到页面弹窗的时候,比如modal组件以及其它弹窗组件,在里面使用form表单的select组件时搜索框无法输入

原因:查看资料发现是由于modal弹窗的最外层div设置了tabindex="-1"这个属性,使得弹窗中元素获取不到焦点,因此造成输入框无法输入

解决办法


重写模态对话框的enforceFocus函数,使得其它元素可以获取焦点

laravel-admin中只需要在控制器的grid方法中添加以下代码即可

$script = <<<EOT
$.fn.modal.Constructor.prototype.enforceFocus = function () {};
$("div[id^='grid-modal-']").removeAttr('tabindex');
$("div[id='modal']").removeAttr('tabindex');
EOT;
\Encore\Admin\Facades\Admin::script($script);

image.png

前端解决的话直接在页面中添加以下js代码即可

$.fn.modal.Constructor.prototype.enforceFocus = function () {};
$("div[id^='grid-modal-']").removeAttr('tabindex');
$("div[id='modal']").removeAttr('tabindex');
目录
相关文章
|
前端开发 JavaScript 数据库
layui联动菜单搜索select表单选项的设置方法
layui联动菜单搜索select表单选项的设置方法
605 0
|
JavaScript 算法 前端开发
layui框架实战案例(16):xm-select下拉多选插件实战记录(远程搜索、过滤、翻页、单选、提示文字)
layui框架实战案例(16):xm-select下拉多选插件实战记录(远程搜索、过滤、翻页、单选、提示文字)
961 0
|
4月前
|
JavaScript 前端开发
Vue实现Element UI框架的自定义输入框或下拉框在输入时对列表选项进行过滤,以及右键列表选项弹出菜单进行删除
本文介绍了如何在Vue框架结合Element UI库实现自定义输入框或下拉框,在输入时对列表选项进行过滤,并支持右键点击列表选项弹出菜单进行删除的功能。
103 0
|
5月前
|
数据安全/隐私保护
Element UI 密码输入框--可切换显示隐藏,自定义图标
Element UI 密码输入框--可切换显示隐藏,自定义图标
228 0
layui表单select框同时支持下拉和输入的解决方案
layui表单select框同时支持下拉和输入的解决方案
376 0
|
JSON JavaScript 数据库
vue搜索表格功能,根据input输入框和下拉框传递的参数进行搜索
vue搜索表格功能,根据input输入框和下拉框传递的参数进行搜索
132 1
|
7月前
|
JavaScript API
Element Plus组件库中的input组件如何点击查看按钮时不可编辑,点击编辑时可编辑使用setup
Element Plus组件库中的input组件如何点击查看按钮时不可编辑,点击编辑时可编辑使用setup
157 0
|
API
ant.design Table组件点击一个选项框却把所有选项都选中了
ant.design Table组件点击一个选项框却把所有选项都选中了
186 0
ant.design Table组件点击一个选项框却把所有选项都选中了
Ant Design:Radio.Group单选组合与Select下拉选项两种添加子组件选项的语法
Ant Design:Radio.Group单选组合与Select下拉选项两种添加子组件选项的语法
264 0
Vant3—— 点击对应的name名称跳转到下一页对应的tab栏的name的位置
点击对应的name名称跳转到下一页对应的tab栏的name的位置
235 0