输入按钮未使用 select2 和 X-editable 提交

Posted

技术标签:

【中文标题】输入按钮未使用 select2 和 X-editable 提交【英文标题】:Enter button not submitting with select2 and X-editable 【发布时间】:2018-11-17 06:23:01 【问题描述】:

我在 Rails 中使用 X-Editableselect2,虽然我能够成功实现 select2,但我无法再按 Enter 按钮来提交更改。

这是我使用select时的样子

<%= editable model, :status, type: :select, data:  source: [...]  %>

在这里,我可以从下拉列表中执行我的选择并按 Enter,它会提交更改。

但是,当我更新为使用 select2

<%= editable model, :status, type: :select2, data:  source: [...]  %>

下拉菜单完美运行,搜索完美运行,但在键盘上按 Enter 不再提交更改,我现在必须使用鼠标单击它旁边的蓝色复选标记按钮才能提交更改。

我需要修复它,以便按 Enter 按钮执行提交操作,就像使用 select 所做的一样。我尝试触发警报以查看是否可以找到输入操作,但使用以下代码无济于事:

$('select2-search-field > input.select2-input').on('keyup', function(e)     
 
    if(e.keyCode === 13)
    alert("Hello");
 );

更新

我认为它不起作用的主要原因是搜索字段。已分配回车键以从下拉搜索字段中选择一个选项,这就是它不提交的原因。从下拉列表中选择一个选项后,我有什么办法可以重新映射,以便第一次按 Enter 时,它会从下拉列表中选择正确的选项,然后第二次按 Enter 时提交?

【问题讨论】:

【参考方案1】:

尝试按键事件:

$('select2-search-field > input.select2-input').on('keypress', function(e)     
 
  if(e.keyCode === 13)
  alert("Hello");
 );

【讨论】:

以上是关于输入按钮未使用 select2 和 X-editable 提交的主要内容,如果未能解决你的问题,请参考以下文章

Select2 搜索输入在打开时未获得焦点

X-editable - 在Chrome更新后,select2无法正常工作

在 Ionic 2 中按下硬件按钮时 Select2 不隐藏

让 Select2 Gem 与 A​​ctiveAdmin“添加新”按钮一起使用

创建一个按钮以删除 select2 上的选定值

Kartik/Krajee Select2 未禁用