2017-04-11 63 views
1

我有一个表单提交前确认午餐的确认模式,这种模式有提交按钮,并不在<form>内,除了IE以外的其他地方,在IE中它只是没有做任何事情。从模态引导提交表格

<form action="" id="form" name="form" > // start form 

在模态,这是提交按钮

<button id="btnSend" type="submit" form="form">OK</button> 

尝试添加的形式隐藏提交按钮在其他职位,但没有工作suggestted。

+0

你可以尝试在IE的情况下,与JS发布形式:'的document.getElementById('FO RM')。提交()'。当用户点击模式确认按钮时,只需触发此代码即可。 – DontVoteMeDown

回答

4

IE或Edge不支持form属性。因此,您应该处理点击操作并手动提交表单以支持跨浏览器。

您还需要在表单中添加一个隐藏的提交按钮,如果你想最终用户提交表单时,输入字段按enter ..

document.getElementById('btnSend') 
    .addEventListner('click', function (event) { 
     document.getElementById('form').submit(); 
    }) 
; 

编辑:浏览器的支持概述形式属性caniuse

+0

谢谢,没有意识到它不是在边缘工作。 –

0

$(document).on('click', '#btnSend', function() { 
 
\t $('#form').submit(); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 

 

 
<form action="" id="form" name="form" onSubmit="alert('submitted')"></form> 
 

 
<button id="btnSend" type="submit" form="form">OK</button>

+0

当您已经手动处理它时,您应该从提交按钮中移除'form'属性。否则,它将在支持该属性的浏览器上提交两次。 –

+0

onsubmit属性只是为了演示它实际上正在提交。 –