我在页面上有一个表单。在里面我有一个元素。如果启用了javascript,我想禁用提交事件。并使用Ajax处理MyMethod中的操作。如何防止提交事件被触发?
我相信一些形式:event.preventDefault()可以解决问题。但是我无法弄清楚如何传递这个事件。
谢谢!
答案 0 :(得分:3)
您可以订阅表单的.submit()
事件并从中返回false:
$(function() {
$('form').submit(function() {
// TODO: do your AJAX stuff here
// for example ajaxify the form
$.ajax({
url: this.action,
type: this.method,
data: $(this).serialize(),
success: function(result) {
// TODO: process the result of your AJAX request
}
});
// this is what will cancel the default action
return false;
});
});
或:
$(function() {
$('form').submit(function(evt) {
evt.preventDefault();
// TODO: do your AJAX stuff here
// for example ajaxify the form
$.ajax({
url: this.action,
type: this.method,
data: $(this).serialize(),
success: function(result) {
// TODO: process the result of your AJAX request
}
});
});
});