一、表单应用
1 获取和失去焦点改变样式(P142)
$(function(){
$(":input").focus(function(){ //获取焦点触发事件
$(this).addClass("focus"); //增加样式
}).blur(function(){ //失去焦点触发事件
$(this).removeClass("focus"); //移除样式
});
})
2 多行文本框触发事件改变文本框高度(P144)
$(function(){
var $comment = $("#comment"); //获取文本框
$(".bigger").click(function(){ //点击放大按钮(.bigger)触发事件
if ($comment.height() < 500){ //判断实际高度
$comment.height($comment.height() + 50); //放大高度
}
});
$(".smaller").click(function(){ //点击缩小按钮(.smaller)触发事件
if (!$comment.is(":animated")){ //判断是否处于动画队列中,避免堆积动画队列
if ($comment.height() > 500){ //判断实际高度
$comment.animate({height:"+=50"},400); //以动画方式缩小高度
}
}
});
})
3 文本框滚动条高度变化(P145)
$(function(){
var $comment = $("#comment"); //获取文本框
#(".up").click(function(){ //点击向上滚动按钮(.up)触发事件
if(!$comment.is(":animated")){ //判断是否处于动画队列中,避免堆积动画队列
$comment.animate({scrollTop:"-=50"},400); //以动画方式向上滚动滚动条
}
}); //(向下滚动代码从略)
})
4 复选框全选、全不选、反选等(P146)
$(function(){
$("#checkedAll").click(function(){ //点击触发全选事件
$('[name=items]:checkbox').attr('checked',true);
//使用attr方法更改checked属性(注意属性选择器),反选设置false值即可
});
$("#checkedRev").click(function(){ //点击触发反选事件
$('[name=items]:checkbox').each(function(){ //循环每一个复选框
$(this).attr("checked", !$(this).attr("checked")); //设置反值(jQuery方法)
});
});
});
//如下使用原生JavaScript设置反选更简单
$(function(){
$("checkedRev").click(function(){
$('[name=items]:checkbox').each(function(){ //循环每一个复选框
this.checked = !this.checked; //设置反值(JS原生方法)
});
});
})
5 输出复选框选中的值(P148)
$("#send").click(function(){ //点击触发事件
var str="选中的是:\r\n"; //赋值
$('[name=items]:checkbox:checked').each(function(){ //循环每一个选中的复选框
str += $(this).val() + "\r\n"; //用val()方法获值并循环赋值
});
alert(str); //输出str
})
6 用一个复选框来控制全部复选框的全选和反选(P149)
$("#checkedAll").click(function(){ //触发事件
if(this.checked){
$('[name=items]:checkbox').attr("checked", true); //判断赋值
}else{
$('[name=items]:checkbox').attr("checked",false); //判断赋值
}
});
//因为控制全选的复选框的checked和所有复选框的checked的值是相同的,所以可以省略判断如下
$("#checkedAll").click(function(){
$('[name=items]:checkbox').attr("checked", this.checked);
})
7 全选状态下,任一复选框取消选中,控制全选的复选框则也取消选中;所有复选框同时选中时,控制全选的复选框则也被选中(联动)(P149)
//思路1:
$('[name=items]:checkbox').click(function(){ //点击任一复选框
var flag = true; //定义flag变量,初始值为true
$('[name=items]:checkbox').each(function(){ //循环复选框组
if (!this.checked){
flag = false; //判断当存在一个未选中的复选框时,flag = false
}
});
$('#checkedAll').attr('checked',flag); //将flag变量赋给控制全选的复选框的checked属性
});
//思路2:
$('[name=items]:checkbox').click(function(){ //点击任一复选框
var $tmp = $('[name=items]:checkbox'); //定义临时变量(避免重复使用选择器)
$('#checkedAll').attr('checked', $tmp.length == $tmp.filter(':checked').length);
//使用filter()方法筛选出选中的复选框,和全部复选框的对象比较 length,
//然后将返回的布尔值直接赋给#checkedAll
})
8 下拉框应用,将一个下拉框中已选中的选项(或者全部选项)添加到另一个下拉框中(P150)
$('#add').click(function(){
var $options = $('#select1 option:selected'); //获取选中项
$options.appendTo('#select2'); //追加给另一个下拉框
});
$('#addAll').click(function(){
var $options = $('#select1 option'); //获取全部项
$options.appendTo('#select2'); //追加给另一个下拉框
});
$('#select1').dblclick(function(){ //双击某个选项将其追加给另一个下拉框
var $options = $("option:selected",this); //获取选中项(注意选择器)
$options.appendTo('#select2'); //追加给另一个下拉框
})
9 表单验证,在每一个有requred类的文本框后加入“*”以提示必填项(P153)
$("form :input.required").each(function(){
var $required = $("<strong class='high'> *</strong>"); //创建元素
$(this).parent().append($required); //追加到文档中,注意parent()方法的使用
})
10 验证表单的用户名和邮箱格式是否正确(P154)
$('form :input').blur(function(){ //失去焦点事件
var $parent = $(this).parent(); //定义临时变量
$parent.find(".formtips").remove(); //删除以前的提醒元素,避免堆积重复提醒
//验证用户名
if ($(this).is('#username')){
if (this.value=="" || this.value.length < 6){ //判断
var errorMsg = '请输入至少6位的用户名.';
$parent.append('<span class="onError formtips">' + errorMsg + '</span>');
//追加错误提示样式
}else{
var okMsg = '输入正确.';
$parent.append('<span class="onSuccess formtips">' + okMsg + '</span>');
//追加正确提示样式
}
}
// 验证邮箱
if ($(this).is("#email")){
if (this.value=="" || (this.value !="" && !/.+@.+\.[a-zA-Z]{2,4}$/.test(this.value))){
//判断
var errorMsg = '请输入正确的E-mail地址.';
$parent.append('<span class="onError formtips">' + errorMsg + '</span>');
//追加错误提示样式
}else{
var okMsg = '输入正确.';
$parent.append('<span class="onSuccess formtips">' + okMsg + '</span>');
//追加正确提示样式
}
}
})
11 验证表单,阻止提交(P155)
$('send').click(function(){
$("form .required:input").trigger('blur'); //模拟触发blur()事件
var numError = $('form .onError').length; //定义numError变量
if (numError){
return false; //判断错误提示个数(长度),如大于0(即存在错误提示)则阻止提交
}
alert("注册成功!");
})
12 实时验证(输入时验证,比blur()验证更及时)(P156)
$('form :input').blur(function(){
//验证代码,见前文
}).keyup(function(){
$(this).triggerHandler("blur"); //每次松开按键时模拟触发blur()事件以实时验证
}).focus(function(){
$(this).triggerHandler("blur"); //每次得到焦点时模拟触发blur()事件以实时验证
分享到:
相关推荐
在这个“jquery会员注册表单验证实例演示”中,我们将深入探讨如何利用jQuery来实现用户友好的表单验证,从而提高用户...通过实践和学习压缩包内的代码,你可以加深对jQuery表单验证的理解,并将其应用于自己的项目中。
"jquery表单验证特效"这个主题涉及到使用jQuery进行表单验证,这是一种提高用户体验的有效方式,通过实时验证用户输入的数据,确保其正确性和完整性,避免提交无效或错误的信息。 表单验证通常是网页应用程序不可或...
在这个名为"jiaoben17162"的压缩包文件中,可能包含了一个实际的示例项目,用于演示上述提到的jQuery高级注册表单的实现。解压后,我们可以研究HTML结构、CSS样式以及JavaScript代码,深入理解如何将这些概念应用于...
下面,我们将详细讨论如何利用jQuery实现动态表单的各种操作。 1. **动态添加表单元素**: 使用jQuery,可以方便地通过`append()`或`insertAfter()`等方法将新的表单元素插入到已存在的HTML结构中。例如,如果要...
jQuery Validation Engine是一款强大的JavaScript库,专门用于实现网页表单的验证功能。它是基于流行的JavaScript库jQuery构建的,为开发者提供了一种优雅的方式来处理用户输入的数据验证。这个插件以其高度可定制性...
在IT领域,尤其是在Web开发中,用户界面的交互性和用户体验是至关重要的,这通常涉及到表单验证和管理。本文将详细解析"jquery...同时,文件名提示的资源可能包含了示例代码和演示,对学习和实践这些概念非常有帮助。
简单的JQuery表单过滤器演示,对初学者应该有帮组!
首先,"jQuery弹出式表单效果.zip"是一个包含资源的压缩包,由用户mud4ut分享,主要用于演示如何使用jQuery实现表单的弹出功能。在这个例子中,表单默认是隐藏的,位于网页的左侧,当用户点击特定的标签或按钮时,...
《jQuery EasyUI 全面解析与实战应用》 jQuery EasyUI 是一款基于 jQuery 的前端框架,它提供了一系列的预定义的 CSS 样式和 JavaScript 插件,使得开发者能够快速构建用户界面,大大提升了开发效率。这个“jquery-...
总之,"jquery会员注册表单验证实例演示.zip"将为我们展示一个完整的jQuery表单验证流程,包括定义规则、处理用户输入、实时反馈和异步验证。通过学习和理解这个实例,开发者能够更好地掌握在实际项目中实现高效、...
• 集成了jQuery UI的风琴盒、页标签特效、ajaxForm表单递交和validate表单验证功能,无需程序员学习这些功能,按常规方式编程即可自动调用。 • 保持了与jqueryui的完全兼容,可以自行前往www.jqueryui.com网站...
通过这些示例,你可以学习到formValidator的各种用法和特性,进一步了解如何在实际项目中应用这个插件。 总之,jQuery formValidator是前端开发中一个非常实用的工具,它简化了表单验证的实现,让开发者可以专注于...
### Jquery.validate表单验证详解 #### 一、引言 在Web开发中,表单验证是确保数据质量的关键步骤。传统的JavaScript表单验证方法往往冗长且难以维护,而jQuery Validate插件则以其简洁、高效及易于扩展的特性成为...
### 锋利的jQuery:JQuery的详细介绍及代码演示 #### 一、jQuery简介 jQuery是一种流行的JavaScript库,它简化了HTML...希望通过对 jQuery 的学习,能够让开发者们更加高效地完成项目,并进一步提升自己的开发技能。
在移动设备日益普及的今天,开发适应各种屏幕尺寸和操作系统的Web应用程序成为了一项重要任务。`jQuery Mobile`是`jQuery`库的一个扩展,专门为触摸屏设备设计,提供了丰富的用户界面组件和优化的交互体验。本教程将...
**jQuery学习资料** jQuery是一个广泛使用的JavaScript库,它极大地简化了HTML文档遍历、事件处理、动画制作和Ajax交互。由于其简洁的API和强大的功能,jQuery成为了前端开发的首选工具之一。 ### 1. jQuery基础 ...
4. **应用验证规则**:对需要验证的表单字段使用特定的类名或数据属性,或者使用JavaScript代码直接指定验证规则。 5. **处理验证结果**:根据插件提供的事件,如`invalid`或`valid`,可以添加相应的处理逻辑。 **...
【jQuery腾讯云诊断域名表单验证特效】是一个用于网站域名输入验证的JavaScript代码实现,它基于流行的jQuery库,为用户提供了一种高效、简洁的方式来确保用户在填写表单时输入的域名信息是有效且符合规范的。...
"jQuery表单动画切换效果"是一个示例项目,旨在演示如何利用jQuery来创建吸引人的交互式表单切换效果,提高用户体验。这个压缩包包含了必要的HTML文件和可能的CSS或JavaScript资源,以实现这种动画效果。 首先,` ...
提供的压缩包文件名称“jquery表单、取值及图片”暗示了资源可能包含关于这些话题的实例代码和图片处理的演示。 总之,jQuery作为强大的JavaScript库,简化了Web开发中的许多任务,尤其是处理表单、下拉框和图片等...