处理ajax表单验证结果,使用 jQuery Form 插件完成带数据验证的 Ajax 表单

本文介绍了如何利用jQuery的AjaxForm插件和Bassistance的FormValidation插件来增强前端表单的验证和提交功能。在表单提交之前进行前端验证可以提高安全性,防止恶意提交。通过示例代码展示了如何配置这两个插件,确保表单在提交前经过有效验证,并在提交成功后更新目标div的内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

表单提交之前,一般我们要在前端对表单的输入值做一些基本验证,以避免恶意提交,并提高安全性。我们可以通过两个 jQuery 插件实现这两个功能:Malsup’s AjaxForm 和 Bassistance’s Form Validation。

/**

* 通用Ajax表单处理

*/

jQuery(document).ready(function($){

$('.simpleajaxform').each(function(){

$(this).attr('method', 'post');

var target = $(this).attr('target');

var func = $(this).attr('function');

options = {};

if( target || func ){

if( target ) $('#'+target).html('').hide();

options = {

success: simpleajaxform_success, //提交成功时的功能

beforeSubmit: simpleajaxform_submit //提交前的功能

};

}

$(this).ajaxForm(options);

});

});

/**

* 提交时: 清除上一个更新并告诉用户,我们正在更新数据

*/

function simpleajaxform_submit(formData, jqForm, options) {

if( !jqForm.valid() ) return false; //如果表单没有验证通过,不能提交

target = jqForm.attr('target');

if( target )

jQuery('#'+target).html('更新中, 请稍候...').removeClass('updated').addClass('updating').show();

return true;

}

/**

* 提交成功: 在目标div中显示更新成功的信息

*/

function simpleajaxform_success(responseText, statusText, xhr, jQForm){

if( jQForm === undefined )

jQForm = xhr;

if( jQForm === undefined ){

c-alert('不能正确处理响应');

return;

}

target = jQForm.attr('target');

if( target )

jQuery('#'+target).removeClass('updating').addClass('updated').html(responseText);

hide = jQForm.attr('hide');

if( hide )

jQuery('#'+hide).hide();

handler = jQForm.attr('function');

if( handler )

eval( handler+'(responseText, jQForm)' );

}

创建表单的时候,我们需要把 WordPress 后端注册的服务器事件包含进去,这样 WordPress 才能识别需要用后台的哪个功能处理提交的表单数据。

//这里的值是WordPress后端的服务器动作

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值