我有一个表格+布局,如下:
<form ...>
<div id="editor">
[form html]
<input type="submit" value="Submit form" />
</div>
</form>
以下javascript:
$(function() {
var form = $('#editor').parents('form');
alert(form.length); // this alerts "1"
$(document).on('submit', 'form', function() {
alert('document form submit fired'); // this works as expected (alerts)
});
form.on('submit', function() {
alert('selected form submit fired'); // this is never alerted
});
});
此表单未通过ajax加载。页面加载时,第一个对话框警告“1”。但是,在提交表单时,只会触发一个警报 - 触发提交文档中所有表单的警报。
为什么会发生这种情况?
答案 0 :(得分:7)
It does work。发生了其他事情,阻止了第二次警报的发射。
答案 1 :(得分:0)
您的表单选择器不正确。
尝试并执行此操作
$("form").on('submit', function() {
非常确定这应该有效
实际上,如果没有通过ajax加载或通过javascript动态加载
你可以做到
$("form").submit(function() {
的修改
抓我的上面。没看到你设置表格的价值。查看http://jsfiddle.net/s3fvM/1/。似乎对我很好。两人都在开火和警报。