js实现表单检测及表单提示的方法


Posted in Javascript onAugust 14, 2015

本文实例讲述了js实现表单检测及表单提示的方法。分享给大家供大家参考。具体如下:

这是个实用的表单判断以及表单提示效果,如果点击需要输入文字的时候,提示就会跑出来,提示框的形状比较个性化,有一个三角符号指向输入框,有两张图片需要下载。

运行效果如下图所示:

js实现表单检测及表单提示的方法

在线演示地址如下:

具体代码如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>表单检测及表单提示</title>
<style type="text/css">
dl {
font:normal 12px/15px Arial;
position: relative;
width: 350px;
}
dt {
 clear: both;
 float:left;
 width: 130px;
 padding: 4px 0 2px 0;
 text-align: left;
}
dd {
 float: left;
 width: 200px;
 margin: 0 0 8px 0;
 padding-left: 6px;
}
.hint {
 display: none;
 position: absolute;
 right: -250px;
 width: 200px;
 margin-top: -4px;
 border: 1px solid #c93;
 padding: 10px 12px;
 background: #ffc url("images/pointer.gif") no-repeat -10px 5px;
}
.hint .hint-pointer {
 position: absolute;
 left: -10px;
 top: 5px;
 width: 10px;
 height: 19px;
 background: url("images/pointer.gif") left top no-repeat;
}
</style>
<script type="text/javascript">
function addLoadEvent(func) {
 var oldonload = window.onload;
 if (typeof window.onload != 'function') {
 window.onload = func;
 } else {
 window.onload = function() {
  oldonload();
  func();
 }
 }
}
function prepareInputsForHints() {
 var inputs = document.getElementsByTagName("input");
 for (var i=0; i<inputs.length; i++){
  if (inputs[i].parentNode.getElementsByTagName("span")[0]) {
   inputs[i].onfocus = function () {
    this.parentNode.getElementsByTagName("span")[0].style.display = "inline";
   }
   inputs[i].onblur = function () {
    this.parentNode.getElementsByTagName("span")[0].style.display = "none";
   }
  }
 }
 var selects = document.getElementsByTagName("select");
 for (var k=0; k<selects.length; k++){
  if (selects[k].parentNode.getElementsByTagName("span")[0]) {
   selects[k].onfocus = function () {
    this.parentNode.getElementsByTagName("span")[0].style.display = "inline";
   }
   selects[k].onblur = function () {
    this.parentNode.getElementsByTagName("span")[0].style.display = "none";
   }
  }
 }
}
addLoadEvent(prepareInputsForHints);
</script>
</head>
<body>
<p style="font:normal 12px/15px Arial;">Tab or click through the fields to reveal the hints.</p>
<dl>
 <dt>
  <label for="firstname">First Name:</label>
 </dt>
 <dd>
  <input name="firstname" id="firstname" type="text" />
  <span class="hint">This is the name your mama called you when you were little.<span class="hint-pointer"> </span></span>
 </dd>
 <dt>
  <label for="lastname">Last Name:</label>
 </dt>
 <dd>
  <input name="lastname" id="lastname" type="text" />
  <span class="hint">This is the name your sergeant called you when you went through bootcamp.<span class="hint-pointer"> </span></span>
 </dd>
 <dt>
  <label for="email">Email:</label>
 </dt>
 <dd>
  <input name="email" id="email" type="text" />
  <span class="hint">The thing with the @ symbol and the dot com at the end.<span class="hint-pointer"> </span></span>
 </dd>
 <dt><label for="year">Birth Year:</label></dt>
 <dd>
  <select id="year" name="year">
   <option value="">YYYY</option>
   <option value="1066">1066</option>
   <option value="1492">1492</option>
   <option value="1776">1776</option>
  </select>
  <span class="hint">Pick a famous year to be born in.<span class="hint-pointer"> </span></span>
 </dd>
 <dt>
  <label for="username">Username:</label>
 </dt>
 <dd>
  <input name="username" id="username" type="text" />
  <span class="hint">Between 4-12 characters.<span class="hint-pointer"> </span></span>
 </dd>
 <dt>
  <label for="password">Password:</label>
 </dt>
 <dd>
  <input name="password" id="password" type="password" />
  <span class="hint">Between 5-13 characters, but not 7. Never 7.<span class="hint-pointer"> </span></span>
 </dd>
 <dt class="button"> </dt>
 <dd class="button">
  <input
   type="submit"
   class="button"
   value="Submit" />
 </dd>
</dl>
</body>
</html>

希望本文所述对大家的javascript程序设计有所帮助。

Javascript 相关文章推荐
Javascript 日期处理之时区问题
Oct 08 Javascript
实用的Jquery选项卡TAB示例代码
Aug 28 Javascript
div模拟选择框示例代码
Nov 03 Javascript
javascript数组操作总结和属性、方法介绍
Apr 05 Javascript
一个JS函数搞定网页标题(title)闪动效果
May 13 Javascript
JavaScript判断手机号运营商是移动、联通、电信还是其他(代码简单)
Sep 25 Javascript
JavaScript实现仿淘宝商品购买数量的增减效果
Jan 22 Javascript
jQuery插件扩展extend的简单实现原理
Jun 24 Javascript
PHP捕捉异常中断的方法
Oct 24 Javascript
基于vue.js的分页插件详解
Nov 27 Javascript
vue中如何实现pdf文件预览的方法
Jul 12 Javascript
JavaScript实现shuffle数组洗牌操作示例
Jan 03 Javascript
JavaScript中的this关键字使用详解
Aug 14 #Javascript
JS实现双击编辑可修改状态的方法
Aug 14 #Javascript
JavaScript变量的作用域全解析
Aug 14 #Javascript
DEDECMS如何为文章添加HOT NEW标志图片
Aug 14 #Javascript
JavaScript实现给按钮加上双重动作的方法
Aug 14 #Javascript
详解jQuery中的元素的属性和相关操作
Aug 14 #Javascript
js实现人才网站职位选择功能的方法
Aug 14 #Javascript
You might like
php MsSql server时遇到的中文编码问题
2009/06/11 PHP
php获取指定数量随机字符串的方法
2017/02/06 PHP
PHP中的正则表达式实例详解
2017/04/25 PHP
Thinkphp结合AJAX长轮询实现PC与APP推送详解
2017/07/31 PHP
win10下 php安装seaslog扩展的详细步骤
2020/12/04 PHP
javascript Select标记中options操作方法集合
2008/10/22 Javascript
JavaScript 判断指定字符串是否为有效数字
2010/05/11 Javascript
jquery插件validate验证的小例子
2013/05/08 Javascript
使用mouse事件实现简单的鼠标经过特效
2015/01/30 Javascript
JS 对象属性相关(检查属性、枚举属性等)
2015/04/05 Javascript
JavaScript中constructor()方法的使用简介
2015/06/05 Javascript
七夕情人节丘比特射箭小游戏
2015/08/20 Javascript
jQuery头像裁剪工具jcrop用法实例(附演示与demo源码下载)
2016/01/22 Javascript
JavaScript实现斗地主游戏的思路
2016/02/29 Javascript
vue.js中实现登录控制的方法示例
2018/04/23 Javascript
webpack项目轻松混用css module的方法
2018/06/12 Javascript
浅谈Redux中间件的实践
2018/07/27 Javascript
解决layui页面按钮点击无反应,也不报错的问题
2019/09/29 Javascript
javaScript实现一个队列的方法
2020/07/14 Javascript
Vue3不支持Filters过滤器的问题
2020/09/24 Javascript
jQuery实现动态操作table行
2020/11/23 jQuery
[05:29]2014DOTA2国际邀请赛 赛后专访:LGDNewbee顺利过关
2014/07/13 DOTA
tensorflow 中对数组元素的操作方法
2018/07/27 Python
Python之使用adb shell命令启动应用的方法详解
2019/01/07 Python
详解PANDAS 数据合并与重塑(join/merge篇)
2019/07/09 Python
python的pyecharts绘制各种图表详细(附代码)
2019/11/11 Python
利用pandas向一个csv文件追加写入数据的实现示例
2020/04/23 Python
css3之UI元素状态伪类选择器实例演示
2017/08/11 HTML / CSS
HTML5和CSS3让网页设计提升到下一个高度
2009/08/14 HTML / CSS
canvas绘制文本内容自动换行的实现代码
2019/01/14 HTML / CSS
危爆物品安全大检查大整治工作方案
2014/05/03 职场文书
党员学习党的群众路线思想汇报(5篇)
2014/09/10 职场文书
2014年最新党员对照检查材料汇总
2014/09/15 职场文书
学期个人自我总结
2015/02/13 职场文书
公安纪律作风整顿心得体会
2016/01/23 职场文书
2016年企业安全生产月活动总结
2016/04/06 职场文书