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 相关文章推荐
JavaScript 高效运行代码分析
Mar 18 Javascript
GRID拖拽行的实例代码
Jul 18 Javascript
JSON传递bool类型数据的处理方式介绍
Sep 18 Javascript
利用jq让你的div居中的好方法分享
Nov 21 Javascript
Vue.js每天必学之表单控件绑定
Sep 05 Javascript
BootStrap Fileinput的使用教程
Dec 30 Javascript
JavaScript队列的应用实例详解【经典数据结构】
Apr 12 Javascript
Node.js 使用流实现读写同步边读边写功能
Sep 11 Javascript
jQuery实现滚动到底部时自动加载更多的方法示例
Feb 18 jQuery
vue.js给动态绑定的radio列表做批量编辑的方法
Feb 28 Javascript
使用typescript开发angular模块并发布npm包
Apr 19 Javascript
Javascript var变量删除原理及实现
Aug 26 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 xml文件操作代码(一)
2009/03/20 PHP
php读取xml实例代码
2010/01/28 PHP
php中++i 与 i++ 的区别
2012/08/08 PHP
ThinkPHP路由详解
2015/07/27 PHP
php pthreads多线程的安装与使用
2016/01/19 PHP
PHP屏蔽关键字实现方法
2016/11/17 PHP
jfinal与bootstrap的登录跳转实战演习
2015/09/22 Javascript
Bootstrap Chart组件使用教程
2016/04/28 Javascript
jquery dataTable 获取某行数据
2017/05/05 jQuery
webpack处理 css\less\sass 样式的方法
2017/08/21 Javascript
利用nvm管理多个版本的node.js与npm详解
2017/11/02 Javascript
angular5 子组件监听父组件传入值的变化方法
2018/09/30 Javascript
JavaScript实现学生在线做题计时器功能
2018/12/05 Javascript
JS实现网页烟花动画效果
2020/03/10 Javascript
[52:27]2018DOTA2亚洲邀请赛 3.31 小组赛B组 paiN vs Secret
2018/04/01 DOTA
进一步探究Python中的正则表达式
2015/04/28 Python
python写入xml文件的方法
2015/05/08 Python
通过源码分析Python中的切片赋值
2017/05/08 Python
Python三种遍历文件目录的方法实例代码
2018/01/19 Python
python 杀死自身进程的实现方法
2019/07/01 Python
python实现图片九宫格分割
2021/03/07 Python
python 如何将数据写入本地txt文本文件的实现方法
2019/09/11 Python
Python greenlet和gevent使用代码示例解析
2020/04/01 Python
基于python 取余问题(%)详解
2020/06/03 Python
利用Python如何制作贪吃蛇及AI版贪吃蛇详解
2020/08/24 Python
俄罗斯最大的在线手表商店:Bestwatch.ru
2020/01/11 全球购物
上海某公司.net方向笔试题
2014/09/14 面试题
中职生自荐信
2013/10/13 职场文书
实习护士自我鉴定
2013/10/13 职场文书
客服实习的个人自我鉴定
2013/10/20 职场文书
电子商务应届生求职信
2013/11/16 职场文书
毕业留言寄语大全
2014/04/10 职场文书
群众路线批评与自我批评发言稿
2014/10/16 职场文书
工作报告范文
2019/06/20 职场文书
vue中data改变后让视图同步更新的方法
2021/03/29 Vue.js
Docker部署Mysql8的实现步骤
2022/07/07 Servers