所属分类:网页特效,PHP实例-Ajax,表单特效
使用方法:
载入必要CSS、JS文件
<script type="text/javascript" src="http://ajax.useso.com/ajax/libs/jquery/1.7.2/jquery.min.js">script>
<script type="text/javascript" src="jquery.form.min.js">script>
接下来看一个初始配置和AJAX的一些操作
$(function(){
var options = {
beforeSubmit: showRequest, // 提交表单前
success: showResponse, // 处理完成之后
resetForm: true,
dataType: 'json'
};
// 提交表单
$('#my_form').submit(function() {
$(this).ajaxSubmit(options);
return false;
});
});
// 提交并判断表单
function showRequest(formData, jqForm, options) {
var uname = $("#uname").val();
if(uname==""){
$("#msg").html("姓名不能为空!");
return false;
}
var age = $("#age").val();
if(age==""){
$("#msg").html("年龄不能为空!");
return false;
}
$("#msg").html("正在提交...");
return true;
}
// 提交表单返回值后的操作
function showResponse(responseText, statusText) {
$("#msg").html('提交成功');
var sex = responseText.sex==1?"男":"女";
$("#output").html("姓名:"+responseText.uname+" 性别:"+sex+" 年龄:"+responseText.age);
}
再来看一下post.php:
$arr = $_POST;
$arr['msg']=1;
echo json_encode($arr); //将PHP数组转换成JSON数据格式
处理表单数据这边就很简单了,无非就是接收数据,处理数据,返回数据了。
ajaxSubmit()还有很多的选项设置,下面列一些比较常用的:
属性 | 描述 |
url | Ajax请求将要提交到该url,默认是表单的action属性值 |
type | 指定提交表单数据的方法(method):“GET”或“POST”。默认值:表单的method属性值(如果没有找到默认为“GET”)。 |
dataType | 期望返回的数据类型。null、“xml”、“script”或者“json”其中之一。dataType提供一种方法,它规定了怎样处理服务器的响应。这个被直接地反映到jQuery.httpData方法中去。下面的值被支持: 'xml':如果dataType == 'xml',将把服务器响应作为XML来对待。同时,如果“success”回调方法被指定, 将传回responseXML值。 'json':如果dataType == 'json', 服务器响应将被求值,并传递到“success”回调方法,如果它被指定的话。。 'script':如果dataType == 'script', 服务器响应将求值成纯文本。。 默认值:null(服务器返回responseText值) |
target | 指明页面中由服务器响应进行更新的元素。元素的值可能被指定为一个jQuery选择器字符串,一个jQuery对象,或者一个DOM元素。 默认值:null。 |
beforeSubmit | 表单提交前被调用的回调函数。“beforeSubmit”回调函数作为一个钩子(hook),被提供来运行预提交逻辑或者校验表单数据。如果“beforeSubmit”回调函数返回false,那么表单将不被提交。“beforeSubmit”回调函数带三个调用参数:数组形式的表单数据,jQuery表单对象,以及传入ajaxForm/ajaxSubmit中的Options对象。 默认值:null |
success | 表单成功提交后调用的回调函数。如果提供“success”回调函数,当从服务器返回响应后它被调用。然后由dataType选项值决定传回responseText还是responseXML的值。 默认值:null |
clearForm | 表示如果表单提交成功是否清除表单数据。默认值:null |
resetForm | 表示如果表单提交成功是否进行重置。默认值: null |
jquery.form还有很多其他的方法,这里就不一一介绍了。以后有机会再发一些其他的