博客列表 >4月10号之作业---ajax()

4月10号之作业---ajax()

tonykorn97的博客
tonykorn97的博客原创
2018年04月11日 09:32:48644浏览

html的代码内容为:

实例

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>3.$.ajax()</title>
</head>
<body>
	<h2>用户登录</h2>
	<form>
		<p>用户名:<input type="text" name="name"></p>
	</form>
</body>
</html>
<script type="text/javascript" src="js/jquery.js"></script>
<script type="text/javascript">
	/**
	 * $.ajax()
	 * 功能:是jquery中的Ajax底层方法,之前学过的$.get(),$.post...都它的特殊形式
	 * 语法: $ajax()
	 * 参数: 参数写到js对象字面量中
	 * 注:因参数众多,下面用实例进行说明
	 */

	 //当失去焦点时时行验证
	 $(':input').blur(function(){
	 	// alert('通过')
	 	//使用ajax进行异步验证
	 	
	 	
	 	//语法1: 全部参数写到$.ajax()参数中
		$.ajax({
			//请求的服务器资源,必须是字符串
			url: 'api/demo1.php',

			//客户端的请求类型:GET,POST...,推荐大写
			type: 'GET',

			//从服务器端返回的数据类型格式:xml,html,json,txt等
			dataType: 'json',

			//异步true,还是同步false(锁定浏览器)
			async: true,

			//发送数据
			//1.查询字符串键值对,多个值之间用&连接
			// data: 'name='+$(':input').val(),
			//2.json格式
			data: {'name':$(':input').val()},
			
			//3.当表单有多个字段时使用序列化方法可提高效率
			//将表单控件内容序列化为查询键值对格式
			// data: $('form:first').serialize(),
			//4.将表单控件内容序列化为json格式
			//data: $('form:first').serializeArray(),

			//成功回调
			success: function(msg,status,xhr) {
				console.log(msg.tips)
				$('p span').empty()
				$('p').append($(msg.tips))
			}			
		})
	

		//$.ajax()第二种语法格式,用得不多,但要看得懂
		// $.ajax({
		// 	url: 'api/demo1.php',
		// 	type: 'GET',
		// 	dataType: 'json',
		// 	data: $('form:first').serialize(),
		// })
		// .done(
		// 	function(msg) {
		// 	console.log(msg.tips)
		// 	$('p span').empty()
		// 	$('p').append($(msg.tips))
		// })


	 })
	
	
</script>

运行实例 »

点击 "运行实例" 按钮查看在线实例


请求demo1.php的内容为:

实例

<?php 
// print_r($_GET);exit;
// 用数组模拟数据库中的已存在的用户名,这是不允许使用的
$nameList = ['admin','peter','php'];
//这是当前用户提交的用户名
$userName = $_GET['name'];

//判断用户名是否为空
if (strlen(trim($userName))==0) {
	$status = 0;
	$tips = '<span style="color:red">用户名不能为空</span>';
	echo json_encode(['status'=>$status, 'tips'=>$tips]);
	// echo '<span style="color:red">用户名不能为空</span>';
//判断用户名是否为纯数字,这是不允许的
} else if (is_numeric($userName)) {
	$status = 0;
	$tips = '<span style="color:red">用户名不能为纯数字</span>';
	echo json_encode(['status'=>$status, 'tips'=>$tips]);
	// echo '<span style="color:red">用户名不能为纯数字</span>';
//判断用户名是否已经被注册
} else if (in_array($userName, $nameList)) {
	$status = 0;
	$tips = '<span style="color:red">用户名太抢手了,换一个</span>';
	echo json_encode(['status'=>$status, 'tips'=>$tips]);
	// echo '<span style="color:red">用户名太抢手了,换一个</span>';
//用户名可用提示
} else {
	$status = 0;
	$tips = '<span style="color:green">恭喜,用户名可用</span>';
	echo json_encode(['status'=>$status, 'tips'=>$tips]);
	// echo '<span style="color:green">恭喜,用户名可用</span>';
}

运行实例 »

点击 "运行实例" 按钮查看在线实例



手抄作业:

1111.jpg

声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议