鉴于以下 HTML:
<form id='test' action='URL'>...</form>
<button type='submit' form='test' formaction='OTHERURL'>submit</button>
当我为表单分配jquery提交处理程序时,它无法识别FireFox中的提交。在Chrome,Opera,Safari这不是问题。
答案 0 :(得分:0)
我无法理解这个问题,因为在我的计算机上,按钮类型提交适用于所有浏览器。
所以只是建议你一些不同我建议你处理按钮上的点击事件,然后触发提交事件,如下面的代码片段所示:
$(document).on('click', 'button:submit', function(e) {
var frm = $('#' + e.target.getAttribute('form'));
var formAction = e.target.formAction.length > 0 ? e.target.formAction : frm.attr('action');
document.querySelector('#result') += '<p>Button Submit Clicked: ' + formAction + '</p><br>';
$('#' + e.target.getAttribute('form')).trigger('submit');
});
$(document).on('submit', '#test', function(e) {
e.preventDefault();
document.querySelector('#result') += '<p>submit</p><br>';
});
<script src="http://code.jquery.com/jquery-1.11.3.min.js"></script>
<form id='test' action='z.json'>
First name:<br>
<input type="text" name="firstname"><br>
Last name:<br>
<input type="text" name="lastname"><br><br>
</form>
<button type="submit" form='test'>Submit</button>
<button type='submit' form='test' formaction='http://www.google.it'>Submit as New url</button>
<div id='result'></div>