jQuery取值、赋值的基本⽅法整理
/*获得TEXT.AREATEXT的值*/
var textval = $("#text_id").attr("value");
//或者
var textval = $("#text_id").val();
/*获取单选按钮的值*/
var valradio = $("input[@type=radio][@checked]").val();
/*获取⼀组名为(items)的radio被选中项的值*/
var item = $('input[@name=items][@checked]').val();
/*获取复选框的值*/
var checkboxval = $("#checkbox_id").attr("value");
/
*获取下拉列表的值*/
var selectval = $('#select_id').val();
//⽂本框,⽂本区域:
$("#text_id").attr("value",'');//清空内容
$("#text_id").attr("value",'test');//填充内容
//多选框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();
});
1. 选取元素
$(”#myid”)效果等于ElementById(”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(”页⾯结构加载完毕, 但是可能某些图⽚尚未加载(⼀般情况下, 此事件就够⽤了)”);jquery的attr属性
});
可以给页⾯绑定多个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(”le”, “q=jquery”, function(data, status){alert(data)})
表⽰请求le, 参数是q, 参数的值是jquery, 请求结束后(不管成功还是失败)执⾏后⾯的function, 该function有两个固定参数, data和status, data是返回的数据, status是本次请求的状态
⽤post⽅法请求⼀个页⾯
$.post(……..) 参数同get⽅法
7.其他⽅法
$.trim(str) 将str前后空格去掉
$.browser 返回当前⽤户浏览器的类型
$.browser.version返回当前浏览器的版本
8. 插件
jQuery⽀持插件, jquery/plugins/上⾯有很多现成的插件, 也可以⾃⼰写
⾃⼰写插件, 请参考docs.jquery/d#object 和docs.jquery/d#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
稍微解释⼀下:
1.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){} //判断是否已经打勾
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论