我有一个表单,我通过ajax加载到弹出窗口。表单定义如下:
<form id="generate_form" class="form" accept-charset="UTF-8" action="/tokens/create" method="POST">
我想捕获表单提交,然后使用AJAX提交数据。所以我添加了以下脚本:
$(document).ready(function () {
$(this).on('submit','#generate-form', function (e) {
alert('trapped?');
return false;
});
});
然而,当我尝试这个时,表格事件没有被捕获,即我从未看到警报对话。我做错了吗?
答案 0 :(得分:3)
你的代码可能因为2个缺少关闭括号而破裂
$(document).ready(function () {
$(this).on('submit','#generate_form', function (e) {
alert('trapped?');
return false;
}); // <-- added closing parentheses
}); // <-- added closing parentheses
答案 1 :(得分:3)
你拼错了"#generate-form"
(下划线而不是破折号)并忘记了一些括号:
$(document).ready(function () {
$(this).on('submit', '#generate_form', function (e) {
alert('trapped?');
return false;
});
});
答案 2 :(得分:1)
差不多......:{D
$('#generate_form').on('submit', function(e) {
alert('trapped?');
e.preventDefault();
return false;
});
我还建议退房jQuery's .on()
Documentation - 那里有很多有用的例子。