Luk*_*gan 103 forms modal-dialog twitter-bootstrap
我已经设置了一个带有表单的bootstrap模式,我只是注意到当我按下Enter键时,模态被解除了.按Enter键有没有办法不解雇它?
我尝试用键盘激活模态:false,但这只能阻止使用ESC键解雇.
vis*_*ish 117
我也遇到了这个问题.
我的问题是我的模态中有一个关闭按钮
<button class="close" data-dismiss="modal">×</button>
Run Code Online (Sandbox Code Playgroud)
在输入字段中按Enter键会导致触发此按钮.我将它改为锚点,它现在按预期工作(输入提交表单并且不关闭模态).
<a class="close" data-dismiss="modal">×</a>
Run Code Online (Sandbox Code Playgroud)
如果没有看到您的来源,我无法确认您的原因是否相同.
jca*_*nso 74
只需将button ="button"属性添加到button元素,某些浏览器默认将该类型解释为submit.
https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button#Attributes
这适用于模态中的所有按钮.
<button type="button" class="close" data-dismiss="modal">×</button>
Run Code Online (Sandbox Code Playgroud)
jpe*_*kin 19
即使从我的Bootstrap Modal中删除所有按钮后我也遇到了这个问题,所以这里没有一个解决方案对我有帮助.
我发现只有键盘焦点位于文本字段时,如果您按Enter键,则具有单个文本字段的表单将导致浏览器执行表单提交(并导致解除).这似乎比使用Bootstrap的任何东西更像是一个浏览器/表单问题.
我的解决方案是将表单的onsubmit属性设置为onsubmit ="return false"
如果您实际使用的是提交事件,这可能是一个问题,但我使用的是生成AJAX请求的JS框架,而不是进行浏览器提交,所以我更喜欢完全禁用提交.(这也意味着我不必手动调整可能触发提交的每个表单元素).
更多信息:带有单个文本输入字段的Bootstrap模式对话框始终在Enter键上关闭
小智 7
您可以在取消按钮之前放置登录按钮,这也可以解决您遇到的问题.
<div class="modal-footer">
<button type="submit" class="btn primary">Login</button>
<button type="submit" class="btn" data-dismiss="modal">Cancel</button>
</div>
Run Code Online (Sandbox Code Playgroud)
小智 7
我有同样的问题,我解决了
<form onsubmit="return false;">
Run Code Online (Sandbox Code Playgroud)
但是还有一种解决方案,您可以添加虚拟的不可见输入,因此您的表单将如下所示:
<form role="form" method="post" action="submitform.php">
<input type="text" id="name" name="name" >
<input type="text" style="display: none;">
</form>
Run Code Online (Sandbox Code Playgroud)