我已经建立了一个带有表单的引导程序模版,我只是注意到当我按Enter键时,该模版被关闭了。是否可以在按Enter时将其关闭?
我尝试使用keyboard:false激活模式,但这只能防止使用ESC键解雇。
我已经建立了一个带有表单的引导程序模版,我只是注意到当我按Enter键时,该模版被关闭了。是否可以在按Enter时将其关闭?
我尝试使用keyboard:false激活模式,但这只能防止使用ESC键解雇。
Answers:
我也有这个问题。
我的问题是我的模态中有一个关闭按钮
<button class="close" data-dismiss="modal">×</button>
在输入字段中按Enter键将触发此按钮。我改为将其更改为锚,并且它现在可以按预期运行(输入后将提交表单,并且不会关闭模式)。
<a class="close" data-dismiss="modal">×</a>
没有看到您的消息来源,我无法确认您的原因是相同的。
只需将type =“ button”属性添加到button元素,某些浏览器默认会将类型解释为Submit。
https://developer.mozilla.org/zh-CN/docs/Web/HTML/Element/button#Attributes
这适用于模态中的所有按钮。
<button type="button" class="close" data-dismiss="modal">×</button>
即使从Bootstrap Modal中删除了所有按钮后,我仍然遇到这个问题,因此这里的解决方案都没有帮助我。
我发现,如果在键盘焦点位于文本字段上时按Enter键,则具有单个文本字段的表单将导致浏览器进行表单提交(并导致解雇)。与Bootstrap相比,这似乎更多是浏览器/表单问题。
我的解决方案是将表单的onsubmit属性设置为onsubmit =“ return false”
如果您实际上正在使用Submit事件,那么这可能是个问题,但是我使用的是JS框架,该框架会生成AJAX请求,而不是浏览器提交,因此我宁愿完全禁用提交。(这也意味着我不必手动调整可能触发提交的每个表单元素)。
type="button"
所有的关闭/取消按钮,但是仍然存在输入键关闭模态的问题。我的模式中只有1个输入文本字段,您的解决方案将其修复。感谢您的回答!
我有同样的问题,我用
<form onsubmit="return false;">
但是还有另一种解决方案,您可以添加虚拟的不可见输入,因此您的表单将如下所示:
<form role="form" method="post" action="submitform.php">
<input type="text" id="name" name="name" >
<input type="text" style="display: none;">
</form>