在进入按键时避免模态closures
我已经build立了一个内部forms的引导模式,我只注意到,当我按下回车键,模式被解雇。 按Enter键时有没有办法解决这个问题?
我尝试用键盘激活模式:错误,但只能防止用ESC键解雇。
我也有这个问题。
我的问题是,我有一个closuresbutton在我的模式
<button class="close" data-dismiss="modal">×</button>
在input字段中按回车会导致此button被触发。 我把它改成了一个锚点,它现在按预期工作(input提交表单,不closures模式)。
<a class="close" data-dismiss="modal">×</a>
没有看到你的来源,我不能确认你的原因是相同的。
只要将type =“button”属性添加到button元素,一些浏览器将该types解释为默认提交 。
https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button#Attributes
这适用于模态中的所有button。
<button type="button" class="close" data-dismiss="modal">×</button>
即使在从Bootstrap模式中删除所有button后,我也遇到了这个问题,所以这里没有任何解决scheme帮助我。
我发现如果在键盘焦点位于文本字段上时按下Enter键,那么只有单个文本字段的表单会导致浏览器执行表单提交(并导致closures)。 这似乎是比任何Bootstrap更多的浏览器/表单问题。
我的解决scheme是将窗体的onsubmit属性设置为onsubmit =“return false”
这可能是一个问题,如果你实际上使用提交事件,但我使用JS框架生成的AJAX请求,而不是做一个浏览器提交,所以我宁愿完全禁用提交。 (这也意味着我不必手动调整每个可能触发提交的表单元素)。
更多信息: 带有单个文本input字段的Bootstrap模式对话框始终在Enter键上消失
您可以将loginbutton放在取消button之前,这将解决您所遇到的问题。
<div class="modal-footer"> <button type="submit" class="btn primary">Login</button> <button type="submit" class="btn" data-dismiss="modal">Cancel</button> </div>
我有同样的问题,我解决了它
<form onsubmit="return false;">
但还有一个解决scheme,你可以添加虚拟的不可见的input,所以你的forms看起来像这样:
<form role="form" method="post" action="submitform.php"> <input type="text" id="name" name="name" > <input type="text" style="display: none;"> </form>
我刚刚有一个类似的经验,我解决它的方式不是使用标签,而是将标签更改为types为“button”的标签。 这似乎解决了按下“input”键和解除引导模式的问题。
我也有这个问题,我就这样解决了。 我添加了提交表单。 我也希望能够使用回车键作为保存键,所以我添加save_stuff()JavaScript到onsubmit。 返回false; 用于防止表单提交。
<form onsubmit="save_stuff(); return false;"> ... </form> <script> function save_stuff(){ //Saving stuff } </script>