我有一个onsubmit处理程序添加到这样的表单:
$('#content_form').bind('submit',function(e) {
source = $(e.target).attr('name');
alert(source);
return false;
});
所以e.target =表单元素。我正在使用几个提交按钮,并且需要确定实际点击了哪一个(在现代浏览器中,单击按钮是唯一提交的按钮,我正在为IE6 compat执行此操作 - 它提交所有按钮的值)
我唯一的想法是杀死任何onsubmit事件,然后将点击事件绑定到按钮本身。如果没有启用javascript,这将完全终止表单功能,所以我想避免这种情况。
答案 0 :(得分:1)
一个简单(但可能是天真)的实现方法是让每个按钮的onclick
处理程序设置一个字段,指示哪一个是最后一个单击的。在提交处理程序中,您可以检查此字段的值。
答案 1 :(得分:1)
$('#content_form input:submit').bind('click', function(e) {
$('#content_form').submit();
// you can now reference this or $(this),
// which should contain a reference to your button
});
答案 2 :(得分:0)
你签出了jQuery Form Plugin吗?它通过ajax非常好地处理提交表单,并将为您处理此问题(以及许多其他问题)。
答案 3 :(得分:-1)
您可以使用preventDefault();
代替return false