jQuery对html元素的取值与赋值实例详解_jquery
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:
下拉框select:
$("#select_id").attr("value",'test');// 设置value=test的项目为当前选中项 $("").appendTo("#select_id")//添加下拉框的 option $("#select_id").empty();//清空下拉框
获取一组名为 (items)的radio被选中项的值
获取select被选中项的文本
var item = $("select[@name=items] option[@selected]").text(); select下拉框的第二个元素为当前选中值 $('#select_id')[0].selectedIndex = 1;
radio单选组的第二个元素为当前选中值
重置表单:
$("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.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), 例如
需要注意, offset是只读的.
给一个元素设置属性
读取一个属性
一次指定多个属性
删除属性
应用样式
删除样式
加一个样式
加一组样式
需要注意的是: 如果是加一个样式, 这个样式的名字是css中的名字, 比如说style="background-color:#FF0000″, 对应的jQuery写法是
但是加一组样式的时候, 样式的名字就是javascript中的css名字了, 比如: myid.style.backgroundColor = "#FF0000″, 对应的jQuery写法是
4. 根据关系查找元素
找和自己同级的下一个元素
找和自己同级的所有位于自己之下的元素
找和自己同级的上一个元素
找和自己同级的所有位于自己之上的所有元素
找自己的第一代子元素
找自己的第一个父元素
找自己的所有父元素
例子:
$("div.l4″).parents().each( function() { alert($(this).html()); });
会把class=l4的div的所有父元素都得到, 并且alert出他们的html
例子:
会得到class=l4的父元素, 该父元素必须是div, 而且其class=l2
这里说的所有方法, 都可以带表达式, 表达式的写法参考第一部分
5. 维护元素
在body中增加一个元素
该语句会把这段html插入到body结束标签之前, 结果是
上一篇: smarty模板保留变量总结
下一篇: JS如何实现瀑布流效果