1、表单选择器
:text案例
当加了下面代码以后
<script src="js/jquery-1.12.4.js" type="text/javascript" charset="utf-8"></script>
<script type="text/javascript">
$(function(){
// $(":input").css("background-color","#D32C47");
$(":text").css("background-color","#D32C47");
});
</script>
:checked及其遍历+change()事件
change事件,当内容发生改变时会触发
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>休闲网注册页面</title>
<link rel="stylesheet" href="css/regin.css">
</head>
<body>
<div id="header" class="main">
<div id="headerLeft">
<img src="images/logo.gif" />
</div>
<div id="headerRight">注册 | 登录 | 帮助</div>
</div>
<div class="register">
<form id="userform" name="userform">
<p>
编号:<input name="code" disabled="disabled" value="10010" />
</p>
<p>
姓名:<input name="name" type="text" value="张三" />
</p>
<p>
性别:<input name="sex" type="radio" value="1" checked="checked" /> 男
<input name="sex" type="radio" value="0" />女
</p>
<p>
爱好:
<input type="checkbox" checked="checked" value="1"/>编程
<input type="checkbox" value="2"/>读书
<input type="checkbox" value="3"/>运动
</p>
<p>
家乡:
<select name="hometown">
<option value="1" selected="selected">北京</option>
<option value="2">上海</option>
<option value="3">天津</option>
</select>
</p>
</form>
<div id="add">
</div>
</div>
<div id="footer" class="main">
<a href="#">关于我们</a> |
<a href="#">诚聘英才</a> |
<a href="#"> 联系方式</a> |
<a href="#">帮助中心</a>
</div>
<script src="js/jquery-1.12.4.js"></script>
<script>
//:checked也包括select里面的选中的option选项 本页面checked不止有一个
$(function(){
$("select[name=hometown]").change(function(){
$(":checked").each(function(i,ele){
// alert(i);
alert($(ele).val());
});
});
});
</script>
</body>
获取select下拉框的值
$(":enabled")+ $(":disabled")
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>休闲网注册页面</title>
<link rel="stylesheet" href="css/regin.css">
</head>
<body>
<div id="header" class="main">
<div id="headerLeft">
<img src="images/logo.gif" />
</div>
<div id="headerRight">注册 | 登录 | 帮助</div>
</div>
<div class="register">
<form id="userform" name="userform">
<p>
编号:<input name="code" disabled="disabled" value="10010" />
</p>
<p>
姓名:<input name="name" type="text" value="张三" />
</p>
<p>
性别:<input name="sex" type="radio" value="1" checked="checked" /> 男
<input name="sex" type="radio" value="0" />女
</p>
<p>
爱好:
<input type="checkbox" checked="checked" value="1"/>编程
<input type="checkbox" value="2"/>读书
<input type="checkbox" value="3"/>运动
</p>
<p>
家乡:
<select name="hometown">
<option value="1" selected="selected">北京</option>
<option value="2">上海</option>
<option value="3">天津</option>
</select>
</p>
</form>
<div id="add">
</div>
</div>
<div id="footer" class="main">
<a href="#">关于我们</a> |
<a href="#">诚聘英才</a> |
<a href="#"> 联系方式</a> |
<a href="#">帮助中心</a>
</div>
<script src="js/jquery-1.12.4.js"></script>
<script>
/*
* 需求: 1.给家乡下拉框绑定 change事件,当下拉框选中的内容发生改变就将下拉框内被选中的选项的内容添加到id名为
* add的<div>内,并设置背景颜色为橙色。
*/
$(function(){
$("select[name=hometown]").change(function(){
//获取的是下拉框的value值
//var $selectedObj=$(":selected").val();
//alert($selectedObj)
//想获取下拉框的值 天津 <option value="3">天津</option>
var $select=$(":selected").html();
//alert($select)
$("#add").text($select);
$("#add").css("background","orange");
})
// $(":enabled").css("background-color","#FFA500");
// $(":disabled").css("background-color","#FFA500");
})
</script>
</body>
2、表单验证事件和方法
3、表单校验 (“选择器”).submit()
1、要有返回值 否则即使你判断了 也不会生效
2、要选中整个表单进行提交
3、indexOf 返回字符串中检索指定字符第一次出现的位置 找不到就返回-1
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>休闲网登录页面</title>
<link href="css/register.css" rel="stylesheet">
</head>
<body>
<div id="header" class="main">
<div id="headerLeft">
<img src="images/logo.gif" /></div>
<div id="headerRight">注册 | 登录 | 帮助</div>
</div>
<div class="register">
<form action="success.html" id="myform" method="get" name="myform">
<ul>
<li class="bold">登录休闲网</li>
<li>
<span>Email:</span>
<!--<input type="email" class="inputs" id="email" />-->
<input type="text" class="inputs" id="email" />
<span id="emailTip"></span>
</li>
<li><span>密码:</span><input type="password" class="inputs" /></li>
<li><input name="btn" id="btn" type="submit" value="登录" class="rb1" /></li>
</ul>
</form>
</div>
<div id="footer" class="main">
<a href="#">关于我们</a> |
<a href="#">诚聘英才</a> |
<a href="#"> 联系方式</a> |
<a href="#">帮助中心</a>
</div>
<script src="js/jquery-1.12.4.js"></script>
<script>
/*
* 需求: 1.当提交表单时触发事件,通过表单过滤选择器 获取邮箱表单中的value值
* 判断是否为空,如果为空不能提交,并提示:Email不能为空。
* 判断是否包含@,如果不包含不能提交,并提示:Email格式不正确必须包含@
* 判断是否包含.,如果不包含不能提交,并提示:Email格式不正确必须包含.
* 判断@是否在.前面,如果不是不能提交,并提示:Email格式不正确\n@必须在.前面。
* zhangqichao@youyue.me
* 如果上述均可以 则提交
*/
$(function(){
$("#myform").submit(function(){
// 1.获取邮箱输入框的值
var emailVal = $("#email").val();
$("#emailTip").html("");
// 2.判空
if(emailVal.trim() == ""){
// alert("邮箱不能为空!");
$("#emailTip").html("<font color='red'>邮箱不能为空!</font>");
return false;
}else if(emailVal.indexOf("@") == -1 || emailVal.lastIndexOf(".") < emailVal.indexOf("@")){
// alert("邮箱格式不正确!");
$("#emailTip").html("<font color='red'>邮箱格式不正确!</font>");
return false;
}
return false;
});
});
</script>
</body>
</html>
3.1、表单校验注册案例1
charAt 返回指定索引(从0开始)的字符
isNaN(“变量名”)是否是非数字值 如果不是数字 返回true
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>休闲网注册页面</title>
<link href="css/leisure.css" rel="stylesheet">
</head>
<body>
<div id="header" class="main">
<div id="headerLeft">
<img src="images/logo.gif" />
</div>
<div id="headerRight">注册 | 登录 | 帮助</div>
</div>
<div class="register">
<form method="post" name="myform" id="myform">
<h1 class="bold">注册休闲网</h1>
<dl>
<dt>您的Email:</dt>
<dd><input id="email" type="text" class="inputs" /></dd>
</dl>
<dl>
<dt>输入密码:</dt>
<dd><input id="pwd" type="password" class="inputs" /></dd>
</dl>
<dl>
<dt>再输入一遍密码:</dt>
<dd><input id="repwd" type="password" class="inputs" /></dd>
</dl>
<dl>
<dt>您的姓名:</dt>
<dd><input id="user" type="text" class="inputs" /></dd>
</dl>
<dl>
<dt>性别:</dt>
<dd>
<input name="sex" type="radio" value="1" checked="checked" />男
<input name="sex" type="radio" value="0" />女</dd>
</dl>
<dl>
<dt class="left">出生日期:</dt>
<dd>
<select name="year">
<option value="1998">1998</option>
</select>年
<select name="month">
<option value="1">1</option>
</select>月
<select name="day">
<option value="12">12</option>
</select>日</dd>
</dl>
<dl>
<dt> </dt>
<dd><input name="btn" type="submit" value="注册" class="rb1" /></dd>
</dl>
</form>
</div>
<a href="#">关于我们</a> |
<a href="#">诚聘英才</a> |
<a href="#"> 联系方式</a> |
<a href="#">帮助中心</a>
</div>
<script src="js/jquery-1.12.4.js"></script>
<script>
/*
* 需求: 1.当表单提交时,获取密码输入框的value值和确认密码框的value值
* 判断是否为空,如果为空不能提交,并提示:密码不能为空
* 判断是否长度小于6位,如果小于则不能提交,并提示:密码必须等于或大于6个字符
*
* 判断确认密码框的值是否等于密码框,如果不等于则不能提交,并提示:两次输入的密码不一致!
*
* 2.获取姓名文本框的值
* 如果姓名为空,不能提交,并提示:姓名不能为空
* 循环截取每一个字符,判断是否为数字,如果为数字,不能提交,并提示:姓名中不能包含数字
*/
$(function(){
$("#myform").submit(function(){
return checkPwd() && checkUser() && checkRepwd();
});
$("#pwd").blur(checkPwd);
$("#repwd").blur(checkRepwd);
$("#user").blur(checkUser);
function checkPwd(){
// 获取密码
var pwd = $("#pwd").val();
if(pwd.trim() == ""){
alert("密码不能为空!");
return false;
}else if(pwd.length < 6){
alert("密码不能小于6位!");
return false;
}
return true;
}
function checkRepwd(){
var repwd = $("#repwd").val();
var pwd = $("#pwd").val();
if(repwd != pwd){
alert("两次密码输入不一致!");
return false;
}
return true;
}
function checkUser(){
var userVal = $("#user").val();
if(userVal.trim() == ""){
alert("姓名不能为空!");
return false;
}
for(var i = 0; i < userVal.length; i++){
var c = userVal.charAt(i);
if(!isNaN(c)){
alert("姓名不能包含数字!")
return false;
}
}
return true;
}
});
</script>
</body>
</html>
3.2、动态改变文本框效果
<input type="text" class="inputs" placeholder="请输入正确的电子邮箱" />
placeholder 你一输入东西就没有了
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>休闲网登录页面</title>
<link href="css/register.css" rel="stylesheet">
</head>
<body>
<div id="header" class="main">
<div id="headerLeft">
<img src="images/logo.gif" /></div>
<div id="headerRight">注册 | 登录 | 帮助</div>
</div>
<div class="register">
<form action="success.html" id="myform" method="get" name="myform">
<ul>
<li class="bold">登录休闲网</li>
<li><span>Email:</span>
<input type="text" class="inputs" value="请输入正确的电子邮箱" />
<!--<input type="text" class="inputs" placeholder="请输入正确的电子邮箱" />-->
</li>
<li><span>密码:</span><input type="password" class="inputs" /></li>
<li><input name="btn" id="btn" type="submit" value="登录" class="rb1" /></li>
</ul>
</form>
</div>
<div id="footer" class="main">
<a href="#">关于我们</a> |
<a href="#">诚聘英才</a> |
<a href="#"> 联系方式</a> |
<a href="#">帮助中心</a>
</div>
<script src="js/jquery-1.12.4.js"></script>
<script>
/*
* 需求: 1.获取焦点时如果value内容为预留内容,清空并将边框设置为红色实线
*/
$(function(){
$(":text").focus(function(){
var $emailObj=$(this).val();
if($emailObj=="请输入正确的电子邮箱"){
$(this).val("");
$(this).css("border","1px solid red")
}
})
$(":text").blur(function(){
var $emailObj=$(this).val();
if($emailObj==""){
$(this).val("请输入正确的电子邮箱");
$(this).css("border","1px solid black")
}
})
})
</script>
</body>
</html>
1、一个事件里面调用另一个事件
2、对象.trim()进行非空判断
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>休闲网登录页面</title>
<link href="css/register.css" rel="stylesheet">
</head>
<body>
<div id="header" class="main">
<div id="headerLeft">
<img src="images/logo.gif" /></div>
<div id="headerRight">注册 | 登录 | 帮助</div>
</div>
<div class="register">
<form action="success.html" id="myform" method="get" name="myform">
<ul>
<li class="bold">登录休闲网</li>
<li><span>Email:</span>
<input type="text" class="inputs" value="请输入正确的电子邮箱" />
<!--<input type="text" class="inputs" placeholder="请输入正确的电子邮箱" />-->
</li>
<li><span>密码:</span><input type="password" class="inputs" /></li>
<li><input name="btn" id="btn" type="submit" value="登录" class="rb1" /></li>
</ul>
</form>
</div>
<div id="footer" class="main">
<a href="#">关于我们</a> |
<a href="#">诚聘英才</a> |
<a href="#"> 联系方式</a> |
<a href="#">帮助中心</a>
</div>
<script src="js/jquery-1.12.4.js"></script>
<script>
/*
* 需求: 当提交表单的时候,获取邮箱的value值
* 如果为空,不能提交,并提示:Email不能为空 并将邮箱输入框触发获取焦点事件
*/
$(function(){
$("#myform").submit(function(){
var $emailObj=$(":text").val();
if($emailObj.trim()=="" || $emailObj=="请输入正确的电子邮箱"){
alert("邮箱不能为空");
/*调用下面的方法*/
$(":text").focus();
return false;
}
})
$(":text").focus(function(){
var $emailObj=$(this).val();
if($emailObj=="请输入正确的电子邮箱"){
$(this).val("");
$(this).css("border","1px solid red")
}
})
$(":text").blur(function(){
var $emailObj=$(this).val();
if($emailObj==""){
$(this).val("请输入正确的电子邮箱");
$(this).css("border","1px solid black")
}
})
})
</script>
</body>
</html>
4、正则表达式
正则表达式符号
4.1 test()
1、定义正则表达式:var reg1=/user/;
alert(reg1.test(“字符串”));
2、var reg2="/user/i" 忽略user大小写
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
<script type="text/javascript">
var str1 = "user18dsdfuser2dsfsd";
// /user/i 忽略大小写
//定义一个正则
var reg1=/user/;
alert(reg1.test(str1)); //true
var reg2=/User/;
alert(reg2.test(str1)); //false
</script>
</body>
</html>