本文實例講述了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:
下拉框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 = $("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), 例如
$("#myid").height("20″); $("#myid").html("<a href=">asdasd</a>") $("#myid").val("asdasd")
要注意, offset是唯讀的.
為一個元素設定屬性
4. 根据关系查找元素
找和自己同级的下一个元素
例子:
$("div.l4″).parents().each( function() { alert($(this).html()); });
会把class=l4的div的所有父元素都得到, 并且alert出他们的html
例子:
这里说的所有方法, 都可以带表达式, 表达式的写法参考第一部分
5. 维护元素
在body中增加一个元素
该语句会把这段html插入到body开始标签之后, 结果是
6.AJAX
用get方法请求一个页面
用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程序设计有所帮助。