如何用jQuery操作表单和表格
发布网友
发布时间:2023-07-31 03:20
我来回答
共1个回答
热心网友
时间:2024-11-26 06:20
这次给大家带来如何用jQuery操作表单和表格以及一些其它应用,下面跟随小编,一起来看一下。
一.表单应用
一个表单有三个基本组成部分:
(1)表单标签:包含处理表单数据所用的服务器端程序URL以及数据提交到服务器的方法。
(2)表单域:包含文本框、密码框、隐藏域、多行文本框、复选框、单选框、下拉选择框和文本上传框等。
(3)表单按钮:包括提交按钮、复位按钮和一般按钮,用于将数据传送到服务器上或者取消传送,还可以用来控制其他定义了处理脚本的处理工作。
1.单行文本框应用
当文本框获取焦点后它的颜色需要变化,当它失去焦点后,则要恢复为原来的样式,可以使用css中的伪类选择符来实现以上的功能,css代码如下:
input:focus ,textarea:focus{
border:1px solid #f00;
background:#fcc;}但是IE6并不支持除超链接元素之外的:hover伪类选择符,此时可以利用jQuery弥补:
.focus{
border:1px solid #f00;
background:#fcc;
}
$(function(){
$(":input").focus(function(){
$(this).addClass("focus");
}).blur(function(){
$(this).removeClass("focus");
});
});2.多行文本框应用
高度变化:通过“放大”和“缩小”按钮绑定单击事件,相应文本框的高度也会放大或缩小。
滚动条高度变化:通过“向上”和“向下”按钮绑定单击事件
3.复选框应用
$("#CheckedAll").click(function(){
$('[name=items]:checkbox').attr('checked',true); //复选框全选,全不选设置为false});$("#CheckedRev").click(function(){
$('[name=items]:checkbox').each(function(){
$(this).attr("checked", !$(this).attr("checked")); //反选
});
});4.下拉框应用
将左边框的选项添加给右边框:
('#add').click(function(){
var $options=$('#select1 options:selected'); //获取全部的选项
$options.appendTo('#select2'); //追加给对方})5.表单验证
验证用户名:
if($(this).is('#username')){
if(this.value==""||this.value.length<6){
var errorMsg='请输入至少6位的用户名';
$parent.append('<span clsaa="formtips onError">'+errorMsg+'</span>');
}else{
var okMsg='输入正确';
$parent.append('<span class="formtips onSuccess">'+okMsg+'</span>');
}
}验证邮箱同理;
提交事件:
$('#send').click(function(){
$("form.required:input").trigger('blur');
var numError=$('form.onError').length;
if(numError){
return false;
}
alert("注册成功,密码已发到你的邮箱,请查收");
});二.表格应用
1.表格变色
普通的隔行变色:
$(function(){
$("tbody>tr:odd").addClass("odd"); //给表格中奇数行添加样式
$("tbody>tr:even").addClass("even"); //给表格中偶数行添加样式})单选框控制表格隔行高亮:
$('tbody>tr').click(function(){
$(this)
.addClass('selected') //给单击的当前行添加高亮样式
.siblings().removeClass('selected') //将兄弟行的高亮模式去掉,执行完对象变为$(this).sibling()
.end() //返回$(this)对象
.find(':radio').attr('checked',true); //将此行所在的单选框也选中});2.表格展开关闭
$(function(){
$('tr.parent').click(function(){ //获取所谓的父行
$(this)
.toggleClass("selected") //添加/删除高亮
.siblings('.child_'+this.id).toggle(); //隐藏/显示所谓的子行
}).click(); //当用户刚进入界面时默认收缩起来})3表格内容筛选
$(function(){
$("#filterName").keyup(function(){ //给文本框绑定触发事件
$("table tbody tr").hide()
.filter(":contains('"+($(this).val())+"')").show(); //根据文本框的输入筛选出行中有val值的行
});
});