javascript表单的Ajax 提交插件的使用

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了javascript表单的Ajax 提交插件的使用相关的知识,希望对你有一定的参考价值。

Ajax 提交插件

form.js 表单的下载地址:官方网站:http://malsup.com/jquery/form/

form.js 插件有两个核心方法:ajaxForm()和ajaxSubmit(),它们集合了从控制表单元素
到决定如何管理提交进行的功能。

//ajaxForm 提交方式
$(‘#reg‘).ajaxForm(function () {
  alert(‘提交成功!‘);
});

使用ajaxForm()方法,会直接实现ajax 提交。自动阻止了默认行为,而它提交的
默认页面是form 控件的action 属性的值。提交的方式是method 属性的值。

//ajaxSubmit()提交方式
$(‘#reg‘).submit(function () {
    $(this).ajaxSubmit(function () {
    alert(‘提交成功!‘);
  });
  return false;
});

注意:ajaxForm()方法,是针对form 直接提交的,所以阻止了默认行为。而ajaxSubmit()
方法,由于是针对submit()方法的,所以需要手动阻止默认行为。

option 参数

option 参数是一个以键值对传递的对象,可以通过这个对象,设置各种Ajax 提交的功
能。

$(‘#reg‘).submit(function () {
  $(this).ajaxSubmit({
    url : ‘test.php‘, //设置提交的url,可覆盖action 属性
    target : ‘#box‘, //服务器返回的内容存放在#box 里
    type : ‘POST‘, //GET,POST
    dataType : null, //xml,json,script,默认为null
    clearForm : true, //成功提交后,清空表单
    resetForm : true, //成功提交后,重置表单
    data : { //增加额外的数据提交
    aaa : ‘bbb‘,
    ccc : ‘ddd‘.
  },
  beforeSubmit : function (formData, jqForm, options) {
    alert(formData[0].name); //得到传递表单元素的name
    alert(formData[0].value); //得到传递表单元素的value
    alert(jqForm); //得到form 的jquery 对象
    alert(options); //得到目前options 设置的属性
    alert(‘正在提交中!!!‘);
    return true;
  },
  success : function (responseText, statusText) {
    alert(responseText + statusText); //成功后回调
  },
  error : function (event, errorText, errorType) { //错误时调用
     alert(errorText + errorType);
    },
  });
  return false;
});

工具方法

//表单序列化
alert($(‘#reg‘).formSerialize());
//序列化某一个字段
alert($(‘#reg #user‘).fieldSerialize());
//得到某个字段的value 值
alert($(‘#reg #user‘).fieldValue());
//重置表单
$(‘#reg‘).resetForm()

 

以上是关于javascript表单的Ajax 提交插件的使用的主要内容,如果未能解决你的问题,请参考以下文章

JQuery.Validate 插件可以阻止提交 Ajax 表单吗

Javascript - 根据ajax响应停止表单提交[重复]

在 JavaScript 中使用 ajax 提交和显示表单数据

如何使用没有 jQuery 但纯 Javascript 的 AJAX 提交此表单

JavaScript 表单使用 Ajax 和 Laravel 路由提交到数据库

防止在 Ajax 发布后使用 Javascript 重新提交表单(无重定向)