jQuery.fn.ajaxSubmit 使用ajax方式提交form表单。 § 原型: <jQuery> $(form).ajaxSubmit({ url : \'<string>\', // 提交目标, 默认取自form的action type : \'POST|GET\', // 提交方式 默认取自form 或者GET data : <hash>, // 额外需要提交的数据 // 序列化表单数据之前回调函数, 可以尝试修改表单内容 beforeSerialize : function(form, options){}, // 数据准备好了, 准备提交, 这时候做些事情, 比较修改下序列化后数据 beforeSubmit: function(elements, form, options){} // ... 其它$.ajax所支持的配置 }); § 举例: $(form).ajaxSubmit({ dataType:\'json\', type:\'POST\', success:function(json){ console.info(json); }, error:function(){alert(\'请求异常\')}, complete:function(){ buttons.attr(\'disabled\', false); }, beforeSubmit:function(){ buttons.attr(\'disabled\', true); }, beforeSerialize:function(form, options){ form[0].someinput.value = \'changed value\'; } });
jQuery.fn.ajaxForm 封装一个form表单, 让它可以使用验证, 可以ajax方式提交数据, 支持CTRL+S提交数据。 § 原型: <jQuery> $(form).ajaxForm( jsonok, // <function>(json) 提交后回调函数 infoHandler, // <function>(element, msg, type, event) 验证提示处理函数 // or jQuery | DOMElement beforeSubmit // <function>(form) // 数据准备好了, 准备提交, 这时候做些事情, 比较修改下序列化后数据 ); § 举例: $(form).ajaxForm(function(json){ if (json.state) { cmstop.ok(json.info); setTimeout(function(){ location = \'?otherurl\'; }, 2000); } else { cmstop.error(json.error); } }, function(element, msg, type, event){ // element 提示的元素input, textarea, select // msg 提示的信息 // type 提示的类型 vali_error, vali_pass, vali_verifing // event $.event处理过的event if (msg) { cmstop.tips(msg, type == \'vali_error\' ? \'error\' : ( type == \'vali_ok\' ? \'ok\' : \'warnning\')); element.addClass(type); } }, function(form){ // 将忽略的数据disabled form.find(\'input.ignored\').attr(\'disabled\', true); return false; // 表示不提交 })