jQuery对html元素的取值与赋值实例详解


Posted in Javascript onDecember 18, 2015

本文实例讲述了jQuery对html元素的取值与赋值方法。分享给大家供大家参考,具体如下:

Jquery给基本控件的取值、赋值

TEXTBOX:

var str = $('#txt').val();
$('#txt').val("Set Lbl Value"); 
//文本框,文本区域:
$("#text_id").attr("value",'');//清空内容
$("#text_id").attr("value",'test');// 填充内容

LABLE:  

var str = $('#lbl').text();
$('#lbl').text("Set Lbl Value");
var valradio = $("input[@type=radio][@checked]").val();
var item = $('input[@name=items][@checked]').val();
var checkboxval = $("#checkbox_id").attr("value");
var selectval = $('#select_id').val();

多选框checkbox:

$("#chk_id").attr("checked",'');//使其未勾选
$("#chk_id").attr("checked",true);// 勾选
if($("#chk_id").attr('checked')==true) //判断是否已经选中

单选组radio:

$("input[@type=radio]").attr("checked",'2'); //设置value=2的项目为当前选中项

下拉框select:

$("#select_id").attr("value",'test');// 设置value=test的项目为当前选中项
$("<option value='test'>test</option><option value='test2'>test2</option>").appendTo("#select_id")//添加下拉框的 option
$("#select_id").empty();//清空下拉框

获取一组名为 (items)的radio被选中项的值

var item = $('input[@name=items][@checked]').val();//若未被选中 则val() = undefined

获取select被选中项的文本
var item = $("select[@name=items] option[@selected]").text();
select下拉框的第二个元素为当前选中值
$('#select_id')[0].selectedIndex = 1;

radio单选组的第二个元素为当前选中值

$('input[@name=items]').get(1).checked = true;

重置表单:

$("form").each(function(){
  .reset();
});

补充:

jQuery对form表单元素的取值与赋值:

1. 选取元素

$("#myid")效果等于document.getElementById("myid"), 但是写的字符要少好多啊.

如果需要将jQuery对象转换成html元素, 则只需要取其第0个元素即可. 例如$("#myid")返回的是jQuery对象, 而$("#myid")[0]返回的就是html元素

如果选择所有的img元素, 那么这么写: $("img")

如果选择带有class="TextBox"的div元素(<div class="TextBox"></div>), 那么这么写: $("div.TextBox")

选择带有myattr属性的元素$("div[myattr]")
选择带有myattr属性, 并且属性值等于myclass的元素$("div[myattr='myclass']")
属性不等于[myattr!='myclass']
属性以my开头[myattr^='my']
属性以class结尾[myattr$='class']
属性包含cla这三个字符[myattr*='cla']

如果一个选择会返回多个元素, 并且希望每返回一个元素, 就把某些属性应用到该元素上, 可以这么写

$("div").each(function()
{
$(this).css("background-color", "#F00″);
alert($(this).html());
$(this).width("200px");
});

2.事件

给页面加onload事件处理方法

$(function()
{
alert("页面结构加载完毕, 但是可能某些图片尚未加载(一般情况下, 此事件就够用了)");
});

可以给页面绑定多个onload事件处理方法

$(function()
{
alert("我首先被执行");
});
$(function()
{
alert("我第二被执行");
});

绑定特殊事件

$("#myid").keydown(function()
{
alert("触发了keydown事件");
});

除了这些常用的, 不常用的事件需要通过bind方法绑定

3. 元素属性/方法

得到一个元素的高度, $("#myid").height()
得到一个元素的位置, $("#myid").offset() 返回的是一个offset对象, 如果取元素位置的top, 则$("#myid").offset().top,?取left则$("#myid").offset().left
得到一个元素的innerHTML, $("#myid").html()
得到一个元素的innerText, $("#myid").text()
得到一个文本框的值, $("#myid").val()
得到一个元素的属性, $("#myid").attr("myattribute")

以上这些方法有个基本特征, 就是不带参数表示取值, 带有参数表示设定值(除了offset), 例如

$("#myid").height("20″);
$("#myid").html("<a href=">asdasd</a>")
$("#myid").val("asdasd")

需要注意, offset是只读的.

给一个元素设置属性

$("#myid").attr("width", "20%")

读取一个属性
$("#myid").attr("width")

一次指定多个属性
$("#myid").attr({disabled: "disabled", width:"20%", height: "30″})

删除属性
$("#myid").removeAttr("disabled")

应用样式
$("#myid").addClass("myclass")

删除样式
$("#myid").removeClass("myclass")

加一个样式
$("#myid").css("height", "20px")

加一组样式
$("#myid").css({height:"20px", width:"100px"})

需要注意的是: 如果是加一个样式, 这个样式的名字是css中的名字, 比如说style="background-color:#FF0000″, 对应的jQuery写法是
$("#myid").css("background-color", "#FF0000″)

但是加一组样式的时候, 样式的名字就是javascript中的css名字了, 比如: myid.style.backgroundColor = "#FF0000″, 对应的jQuery写法是
$("#myid").css({backgroundColor:"#FF0000″})

4. 根据关系查找元素

找和自己同级的下一个元素

$("#myid").next()

找和自己同级的所有位于自己之下的元素
$("#myid").nextAll()

找和自己同级的上一个元素
$("#myid").prev()

找和自己同级的所有位于自己之上的所有元素
$("#myid").prevAll()

找自己的第一代子元素
$("#myid").children()

找自己的第一个父元素
$("#myid").parent()

找自己的所有父元素
$("#myid").parents()

例子:

$("div.l4″).parents().each(
function() {
alert($(this).html());
});

会把class=l4的div的所有父元素都得到, 并且alert出他们的html

例子:

$("div.l4″).parents("div.l2″).each(function() { alert($(this).html()); });

会得到class=l4的父元素, 该父元素必须是div, 而且其class=l2

这里说的所有方法, 都可以带表达式, 表达式的写法参考第一部分

5. 维护元素

在body中增加一个元素

$("body").append("<input type='text' value='asd' />")

该语句会把这段html插入到body结束标签之前, 结果是<input type='text' value='asd' /></body>
$("body").prepend("<input type='text' value='asd' />")

该语句会把这段html插入到body开始标签之后, 结果是<body><input type='text' value='asd' />

6.AJAX

用get方法请求一个页面

$.get("http://www.google.com", "q=jquery", function(data, status){alert(data)})

表示请求http://www.google.com, 参数是q, 参数的值是jquery, 请求结束后(不管成功还是失败)执行后面的function, 该function有两个固定参数, data和status, data是返回的数据, status是本次请求的状态

用post方法请求一个页面
$.post(……..) 参数同get方法

7.其他方法

$.trim(str) 将str前后空格去掉
$.browser 返回当前用户浏览器的类型
$.browser.version返回当前浏览器的版本

8. 插件

jQuery支持插件, http://jquery.com/plugins/上面有很多现成的插件, 也可以自己写
自己写插件, 请参考http://docs.jquery.com/Core/jQ.....end#object 和http://docs.jquery.com/Core/jQuery.extend#object

1. 下拉框:

var cc1 = $(".formc select[@name='country'] option[@selected]").text(); //得到下拉菜单的选中项的文本(注意中间有空格)
var cc2 = $('.formc select[@name="country"]').val(); //得到下拉菜单的选中项的值
var cc3 = $('.formc select[@name="country"]').attr("id"); //得到下拉菜单的选中项的ID属性值
$("#select").empty();//清空下拉框//$("#select").html('');
$("<option value='1'>1111</option>").appendTo("#select")//添加下拉框的option

稍微解释一下:

select[@name='country'] option[@selected] 表示具有name 属性,
并且该属性值为'country' 的select元素 里面的具有selected 属性的option 元素;
可以看出有@开头的就表示后面跟的是属性。

2. 单选框:

$("input[@type=radio][@checked]").val(); //得到单选框的选中项的值(注意中间没有空格)
$("input[@type=radio][@value=2]").attr("checked",'checked'); //设置单选框value=2的为选中状态.(注意中间没有空格)

3. 复选框:

$("input[@type=checkbox][@checked]").val(); //得到复选框的选中的第一项的值
$("input[@type=checkbox][@checked]").each(function(){ //由于复选框一般选中的是多个,所以可以循环输出
 alert($(this).val());
});
$("#chk1").attr("checked",'');//不打勾
$("#chk2").attr("checked",true);//打勾
if($("#chk1").attr('checked')==undefined){} //判断是否已经打勾

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

Javascript 相关文章推荐
js静态作用域的功能。
Dec 25 Javascript
javascript 日期时间函数(经典+完善+实用)
May 27 Javascript
跨浏览器开发经验总结(四) 怎么写入剪贴板
May 13 Javascript
IE6下javasc#ipt:void(0) 无效的解决方法
Dec 23 Javascript
jquery使用animate方法实现控制元素移动
Mar 27 Javascript
js+html5通过canvas指定开始和结束点绘制线条的方法
Jun 05 Javascript
学习使用AngularJS文件上传控件
Feb 16 Javascript
教你JS中的运算符乘方、开方及变量格式转换
Aug 09 Javascript
js放大镜放大购物图片效果
Jan 18 Javascript
基于webpack 实用配置方法总结
Sep 28 Javascript
Three.js加载外部模型的教程详解
Nov 10 Javascript
Vue中computed、methods与watch的区别总结
Apr 10 Javascript
jQuery打字效果实现方法(附demo源码下载)
Dec 18 #Javascript
jQuery中trigger()与bind()用法分析
Dec 18 #Javascript
jQuery+JSON实现AJAX二级联动实例分析
Dec 18 #Javascript
js获取url传值的方法
Dec 18 #Javascript
JavaScript setTimeout使用闭包功能实现定时打印数值
Dec 18 #Javascript
jquery获取css的color值返回RGB的方法
Dec 18 #Javascript
jQuery实现textarea自动增长宽高的方法
Dec 18 #Javascript
You might like
php源码加密 仿微盾PHP加密专家(PHPCodeLock)
2010/05/06 PHP
PHP上传文件时自动分配路径的方法
2015/01/09 PHP
浅析PHP关键词替换的类(避免重复替换,保留与还原原始链接)
2015/09/22 PHP
PHP中的使用curl发送请求(GET请求和POST请求)
2017/02/08 PHP
PHP实现双链表删除与插入节点的方法示例
2017/11/11 PHP
php实现 master-worker 守护多进程模式的实例代码
2019/07/20 PHP
PHP7 参数处理机制修改
2021/03/09 PHP
Javascript中获取出错代码所在文件及行数的代码
2010/09/23 Javascript
六款帮助你实现惊艳视差滚动效果的jQuery插件
2012/09/14 Javascript
Javascript 多浏览器兼容总结(实战经验)
2013/10/30 Javascript
JS中Date日期函数中的参数使用介绍
2014/01/02 Javascript
Vue插件写、用详解(附demo)
2017/03/20 Javascript
Vue实现virtual-dom的原理简析
2017/07/10 Javascript
微信小程序“摇一摇”的实例代码
2017/07/20 Javascript
详解 vue.js用法和特性
2017/10/15 Javascript
JS简单实现查看文档创建日期、修改日期和文档大小的方法示例
2018/04/08 Javascript
vue中keep-alive的用法及问题描述
2018/05/15 Javascript
微信小程序中使用自定义图标(阿里icon)的方法
2018/08/20 Javascript
Nuxt.js nuxt-link与router-link的区别说明
2020/11/06 Javascript
[49:08]Secret vs VP 2018国际邀请赛小组赛BO2 第一场 8.17
2018/08/20 DOTA
[00:52]DOTA2国际邀请赛
2020/02/21 DOTA
用python实现刷点击率的示例代码
2019/02/21 Python
python模拟实现斗地主发牌
2020/01/07 Python
在 Windows 下搭建高效的 django 开发环境的详细教程
2020/07/27 Python
局域网定义和特性
2016/01/23 面试题
在Ajax应用中信息是如何在浏览器和服务器之间传递的
2016/05/31 面试题
幼儿教师个人求职信范文
2013/09/21 职场文书
公司聘任书模板
2014/03/29 职场文书
中班开学寄语
2014/04/04 职场文书
党风廉设责任书
2014/04/16 职场文书
2014年大学教师工作总结
2014/12/02 职场文书
2014流动人口计划生育工作总结
2014/12/20 职场文书
2019送给家人们的中秋节祝福语
2019/08/15 职场文书
解决golang在import自己的包报错的问题
2021/04/29 Golang
浅谈怎么给Python添加类型标注
2021/06/08 Python
Go中使用gjson来操作JSON数据的实现
2022/08/14 Golang