2013-07-20 68 views
2

我有以下代码通过jQuery提交表单并获取其返回(Json),处理它并做一些其他的事情。它运作良好。通用/动态JQuery表单提交

$(function() { 
    $('#update_marker').submit(function(e) { 
    e.preventDefault(); 
    $.post($("#update_marker").attr("action"), $("#update_marker").serialize(), function(data) { 

我想知道是否有办法处理大量不同的表单,而无需为每个表单ID创建此块。有没有一种方法可以让代码中的#update_marker表示为动态的(例如包装函数中的参数),所以我只需要为我的所有表单创建一个代码块?

回答

1

如果你想这样做对他们同样的动作,为什么不使用

$(function() { 
     $('form').submit(function(e) { 
     e.preventDefault(); 
     $.post($(this).attr("action"), $(this).serialize(), function(data) {...} 
    }); 
}); 
1

它可以像换#update_marker的形式,简单吗?

$(function() { 
    $('form').submit(function(e) { 
     e.preventDefault(); 
     $.post($(this).attr("action"), $(this).serialize(), function(data) { 

这将钩住页面上的每个表单元素。如果你想它只发生在某些形式,添加一个class =“specialform”给他们,然后做类似

$(function() { 
    $('.specialform').submit(function(e) { 
     e.preventDefault(); 
     $.post($(this).attr("action"), $(this).serialize(), function(data) { 
+0

很酷,我认为这样做! :) –