我们在提交表单的时候,如果没有使用ajax提交,页面都会自己刷新一下,显得非常的不友好,所以我们需要把我们的表单提交修改为ajax的模式,可以让用户清楚地知道他们在提交表单的时候处在哪一个阶段:正在提交?提交成功?
我简单使用了一下,jQuery Form插件有一下优点:
1.支持提交前验证.
2.支持提交后回调.
3.采用AJAX方式,有很好的用户体验
4.提交方式是灵活.只要指定要提交的form ID即可.想提交那个form.就可提交那个.同时提交参数可配置.
5.支持提交多种类型数据.如:xml,json等.
主要的函数:
1.ajaxForm
增加所有需要的事件监听器,为AJAX提交表单做好准备。ajaxForm不能提交表单。在document的ready函数中,使用ajaxForm来为AJAX提交表单进行准备。ajaxForm接受0个或1个参数。这个单个的参数既可以是一个回调函数,也可以是一个Options对象。
实例:
$("#myFormId").ajaxForm();2.ajaxSubmit
// 绑定表单提交事件处理器$("#myFormId").submit(function() {// 提交表单$(this).ajaxSubmit();// 为了防止普通浏览器进行表单提交和产生页面导航(<span style="color: #333333;"><a href="http://www.100sucai.com/web/jquerytexiao/huandengpian" target="_blank"><span style="color: #333333;">防止页面刷新</span></a></span>?)返回falsereturn false;});3.formSerialize var queryString = $("#myFormId").formSerialize();// 现在可以使用$.get、$.post、$.ajax等来提交数据$.post("myscript.php", queryString);4.fieldSerialize
var queryString = $("#myFormId .specialFields").fieldSerialize();5.fieldValue
// 取得密码输入值var value = $("#myFormId :password").fieldValue(); alert("The password is: " + value[0]);6.resetForm
$("#myFormId").resetForm();
$("#myFormId").clearForm();8.clearFields
$("#myFormId .specialFields").clearFields();
<%@ page language="java" pageEncoding="UTF-8"%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><title>My Jquery</title><script type="text/javascript" src="<%=request.getContextPath()%>/jslib/jquery-1.4.2.js"></script><script type="text/javascript" src="<%=request.getContextPath()%>/jslib/jquery.form.js"></script><script type="text/javascript"> // wait for the DOM to be loaded$(document).ready(function() {// bind "myForm" and provide a simple callback function$("#myForm").ajaxForm(function() { alert("Thank you for your comment!"); }); }); // attach handler to form"s submit event $("#myFormId").submit(function() {// submit the form$(this).ajaxSubmit();// return false to prevent normal browser submit and page navigationreturn false; });</script></head><body><form id="myForm" action="index.jsp" method="post">Name: <input type="text" name="name" />Comment:<textarea name="comment"></textarea><input type="submit" value="Submit Comment" /></form></body></html>通过本文详细介绍了jQuery通过jQuery.form.js插件使用ajax提交form表单,希望大家喜欢。