Jquery学习笔记:操作form表单元素之一(文本框和下拉框)

一、概述

在web页面开发中,经常需要获取和设置表单元素的值(如文本框中的内容),特别是在ajax应用中,更是常态。本文系统的介绍下如何操作。

同操作其它html元素一样,操作的过程差不多。

第一步,需要获取到表单元素对应的jquery(或dom)对象。这个主要是利用jquery的选择器机制。

第二步,调用表单元素的属性和方法来获取和设置值。

其中最常见的就是利用jquery对象的val方法。因为很多表单元素都有标准的 value属性,这个可以通过jquery的 val方法来读取和设置属性值。

如:

<textarea id="mytextarea">ddd</textarea>

alert($("#mytextarea").val());  //获取文本区中的内容

$("#mytextarea").val("good"); //设置内容

不同的表单元素有自己不同的地方,下面我们逐个介绍。

二、文本框和文本域

这两个元素,利用jquery对象的val方法就可以完成相关的操作。如:

<input type="text" id="item" value="good">

<textarea id="item">some msg</textarea>

文本框和文本域内容读写方式是一样的

获取内容

var value = $("#item").val()

设置内容

$("#item").val("hello");

三、下拉框和列表框

在html表单中,下拉框和列表框都是对应select标签,其区别在于size属性的设置。

一个最简单的select元素

<select id="item">

<option value="v1">值1</option>

<option value="v2">值2</option>

<option value="v3">值3</option>

</select>

上面这种写法它表现的是一个下拉框 ,我们可以给select标签设置size属性让它变为列表框,如:<select id="item"  size=3>,这样就是一个列表框。

下拉框就相当于设置 size =1 或0 .  注意 ,如果是下拉框,第一个option是默认选中的,如果是列表框(size值大于1),则没有默认选中的项。

无论是下拉还是列表框,对其最常见的操作就是获取和设置当前选中的option。

1、静态设置选中

给option 元素添加 selected标记,则该元素会被选中。如:

<select id="item">

<option value="v1">值1</option>

<option value="v2" selected>值2</option>

<option value="v3">值3</option>

</select>

这时打开页面,默认value属性为v2的option被选中了。这时调用 $("#item").val() 返回的值是 v2,该值是被选中的option的value属性。

2、动态设置选中

调用$("#item").val("值") 方法,就会选中值为val参数的option项。如果参数值对应的option不存在,则下拉框就会没有任何被选中的项,这时调用$("#item").val() 返回的值是null 。

3、操作被选中项的序号

除了调用 $("#item").val() 可以直接获取被选中项的value值外。还可以利用 $("#item").prop("selectedIndex") 获取selectedIndex属性值,当列表有被选中的option时,则该属性值为该option的序号(注意从0开始),如果列表没有被选中的,则该属性值为-1。

还有通过改变selectedIndex的值来设置被选中项,如

$("#item").prop("selectedIndex",2) 表示第3个元素被选中。

4、获取被选中的option对象(元素)

利用jquery选择器 ,如 $("#item option:selected") 可以获取到被选中的option对象。如:

var obj = $("#item option:selected");

alert(obj.prop("value"));  //显示option的value属性

alert(obj.prop("text"));   //显示option的text属性

5、获取option元素

因为option也是一个html标签,就可以同普通的html标签一样去通过js访问它。

利用options属性可以获取到所有option元素

如:$("#item").prop("options") 返回所有的option对象(注意是dom对象,不是jquery对象)

$("#item").prop("options")[0].value  //第一个option的value属性

$("#item").prop("options")[0].text  //第一个option的text值,就是显示的文本内容

还可以直接通过选择器来操作,如:

var obj = $("#item option"); //获取所有的option元素

obj.each(function(index,data){

alert(data.value);

});

6、length属性

利用 $("#item").prop("length") 可以获取select元素option的个数

当然还有其它方法,如:

$("#item").prop("options").length

7、multiple属性

当给select元素设置multiple标记时,表示该列表框中元素可以被多选。

<select id="item" multiple size =3>

<option value="v1">值1</option>

<option value="v2" >值2</option>

<option value="v3">值3</option>

</select>

需要注意的是,如果设置多选,则需要设置size属性,让表现方式为列表框,这样才可以进行多选操作。 这时调用 val方法时,如果有多项被选中,则返回的值为多个选项的value以逗号分隔。如上面全选,则返回值为 v1,v2,v3。

注意,不能反而来通过 val("v1,v2")来同时设置多个选项被选中。这时就需要通过设置 selected属性来设置被选中了。如:

var obj = $("#item option"); //获取所有的option元素
            obj.each(function(index,data){
                $(data).prop("selected",true);
            });

上面代码选中所有的option。

四、小结

本文介绍了如何操作表单元素中的文本框和下拉框。后续的文章中对其它表单元素分别介绍。

时间: 2024-10-07 11:21:25

Jquery学习笔记:操作form表单元素之一(文本框和下拉框)的相关文章

Jquery学习笔记:操作form表单元素之二(复选框和单选框)

在上面文章的基础上,我们介绍如何操作表单元素中的 复选框和单选框. 一.复选框 <label> <input type="checkbox" id="item" checked> 全选</label> 注意,input标签要放在label标签内,这样点击文字时也会有反映. 如果选中了,调用  $("#item").prop("checked")返回true,否则返回false 同样利用pro

第83天:jQuery中操作form表单

操作form表单 1. 属性操作 设置属性: // 第一个参数表示:要设置的属性名称 // 第二个参数表示:该属性名称对应的值 $(selector).attr("title", "传智播客"); 获取属性: // 参数为:要获取的属性的名称,改操作会返回指定属性对应的值 $(selector).attr("title"); 此时,返回指定属性的值 移除属性: // 参数为:要移除的属性的名称 $(selector).removeAttr(&qu

jQuery学习之:Validation表单验证插件

http://polaris.blog.51cto.com/1146394/258781/ 最近由于公司决定使用AJAX + Struts2来重构项目,让我仔细研究一下这两个,然后集中给同事讲讲,让每个人都能够有所掌握,慢慢会用.于是,自己便开始学习…… 由于Struts2自己早就学过,因而不需要花多少时间.而AJAX之前没怎么用过.现在AJAX框架如此之多,选择哪一个呢?开始打算选择 dojo,但是看了一点后,发现蛮复杂的.在之前有学过一点点jQuery,而网上也说jQuery很强大而且很容易

[Spring MVC]学习笔记--表单标签的使用

github例子地址: https://github.com/lemonbar/spring-mvc-jsp 效果图 关于spring mvc的标签的讲解, 有一篇blog已经讲的很细了. http://haohaoxuexi.iteye.com/blog/1807330 官方文档地址: http://docs.spring.io/spring/docs/4.0.6.RELEASE/spring-framework-reference/htmlsingle/#view-jsp 而且我在上面的例子

struts2 jsp表单提交后保留表单中输入框中的值 下拉框select与input

原文地址:struts2 jsp表单提交后保留表单中输入框中的值 下拉框select与input jsp页面 1     function dosearch() {2         if ($("#textValue").val() == "") {3                 $("#errortip").html("<font color='#FF0000'>请输入查询内容</font>")

通过jquery来实现文本框和下拉框动态添加效果,能根据自己的需求来自定义最多允许添加数量,实用的jquery动态添加文本框特效

<!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> <meta http-equiv="content-

【JAVAWEB学习笔记】28_jqueryAjax:json数据结构、jquery的ajax操作和表单校验插件

Ajax-jqueryAjax 今天内容: 1.json数据结构(重点) 2.jquery的ajax操作(重点) 3.jquery的插件使用   一.json数据结构 1.什么是json JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.它基于ECMAScript的一个子集. JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯.这些特性使JSON成 为理想的数据交换语言.易于人阅读和编写,同时也易于机器解析和生成(一般用于提升网络

jQuery操作Form表单元素

Web开发中常常须要操作表单,form表单元素有select.checkbox.radio.textarea.button.file.text.hidden.password等. 当中checkbox和radio的读写值操作比較多变,checkbox和radio常常常使用在一个分组里.实现多选或者单选. jQuery提供了利用表单选择器我们能够极其方便地获取表单的某个或某类型的元素. 选择器 返回 演示样例 :input 集合元素 $(":input")选取全部,,和元素. :text

前端 http协议 四大特性 web本质 -响应状态码 列表标签 表单操作 form表单 # 44

1.前端简介 1 """""" 2 """前端:""" 3 """和python没有任何关系""" 4 5 1.什么是前端? 6 任何与用户直接打交道的操作界面都可以称之为前端 7 比如 : 电脑界面 手机界面 平板界面 8 9 2.什么是后端? 10 暂时先理解成,幕后操作者 11 不直接与用户打交道 12 13 3.为什么要