《锋利的jQuery》六、jQuery的表单与表格


title: 《锋利的jQuery》六、jQuery的表单与表格
date: 2017-07-23 22:48:00
tags: 锋利的jQuery


表单的应用

表单的组成部分

  1. 表单标签:包含处理表单数据所用的服务器端程序URL以及数据提交到服务器的方法。

  2. 表单域:包含文本框、密码框、隐藏域、多行文本框、复选框、单选框、下拉选择框和文件上传框等。

  3. 表单按钮:包括提交按钮、复位按钮和一般按钮,用于将数据传送到服务器上或者取消传送,还可以用来控制其它定义了处理脚本的处理工作。

文本框

单行文本框有失去和获取焦点事件。

$('input').focus(function(){
    
}).blur(function(){
    
})

也可以不传参数直接focus()blur(),可以直接让文本框失去和获得焦点。

复选框

jQuery可以控制复选框的就是是否被选择,checked属性如果为true就是被选中,为false就是没有选中。而最常用的就是全选、反选、全不选这三种按钮控制复选框的状态。

// 全选
$('input:checkbox').prop('checked','true');

// 全不选
$('input:checkbox').prop('checked','false');

// 反选
$('input:checkbox').each(function(){
    $(this).prop('checked',!$(this).prop('checked'));
    // 这里也可以直接用原生来写
    // this.checked = !this.checked;
})

还有一种复选框是 全选/全不选,这是用一个复选框控制其他复选框选项的状态。

// 全选和全不选
$('#allChecked').click(function(){
    $('input:checkbox').prop('checked',$(this).prop('checked'))
})

// 在其他选项被取消勾选后,全选的状态也应该改为false
$('input:checkbox').click(function(){
    var flag = true;
    if(!$(this).prop('checked')){
        flag = false;
    }
    $('#allChecked').prop('checked',flag);
})

下拉框

下拉框的应用通常是在左右两个移动到右边