1 【jquery】常用的jquery獲取表單對象的屬性與值 2 3 4 1、JQuery的概念 5 6 7 8 9 JQuery是一個JavaScript的類庫,這個類庫集合了很多功能方法,利用類庫你可以用一些簡單的代碼實現一些復雜的JS效果。 10 11 12 2、JQuery實現了 代碼的分離 13 14 不用再網頁中加入如:onclick之類的事件來調用函數了,直接引入JQuery類庫和自己編寫的JQuery代碼就可以了; 15 如: 16 $(function(){ 17 $("Element").click{function(){ 18 alert("點擊我哦!"); 19 } 20 } 21 }); 22 上面的代碼中 只要定義了Element 這個元素 后面的click是動作 23 24 alert("點擊我哦!");這個是要執行的代碼,當然你可以有很多的操作在這個函數中; 25 這里面的$這個號代表JQuery的意思 ,就是引用類庫。 26 27 3、JQuery的核心的一些方法 28 each(callback) '就像循環 29 $("Element").length; ‘元素的個數,是個屬性 30 $("Element").size(); ’也是元素的個數,不過帶括號是個方法 31 $("Element").get(); ‘某個元素在頁面中的集合,以數組的形式存儲 32 $("Element").get(index); ’功能和上面的相同,index表示第幾個元素,數組的下標 33 $("Element").get().reverse(); ‘把得到的數組方向 34 ("Element1").index(("Element1").index(("Element2")); ’元素2在元素1中的索引值是。。。 35 36 37 4、基本對象獲取(注意這里獲取的都是Jquery對象而不是Dom對象哦,但是他倆是可以轉換滴) 38 $("*") ‘表示獲取所有對象 但是我至今沒這樣用過 39 $("#XXX") ’獲得 id=XXX 的元素對象(id可以是標簽的id或CSS樣式id) 常用 40 41 42 $("input[name='username']") 獲得input標簽中name='userName'的元素對象 常用 43 44 45 $(".abc") ' 獲得樣式class的名字是.abc的元素對象 常用 46 $("div") ' 標簽選擇器 選擇所有的div元素 常用 47 $("#a,.b,span") '表示獲得ID是a的元素和使用了類樣式b的元素以及所有的span元素 48 $("#a .b p") 'ID號是a的並且使用了 b樣式的 所有的p元素 49 50 示例: 51 52 <html> 53 <head> 54 <title>jquery測試</title> 55 <meta http-equiv="content-type" content="text/html; charset=UTF-8"> 56 <script type="text/javascript" src="../js/jquery-1.4.1.js"></script> 57 <style type="text/css"> 58 .checkCss{ 59 color:blue; 60 } 61 .redioCss{ 62 color:red; 63 } 64 </style> 65 <script type="text/javascript"> 66 $(function(){ 67 // $("#XXX") 獲得id=XXX的所有Jquery對象 68 $("#subt").click(function(){ 69 // $("XXX") 獲得XXX標簽名的所有Jquery對象 70 alert("input 標簽的對象個數為:"+$("input").length); 71 // $("XXX[name='YYY']") 獲得XXX標簽名下name='YYY'的所有Jquery對象 72 // val()獲得屬性值 73 alert("name='userName'的輸入框內容為:"+$("input[name='userName']").val()); 74 // 注意獲得value值的第二種方式 75 alert("name='note'的輸入框內容為:"+$("input[name='note']").attr("value")); 76 alert("下拉菜單被選中項的文本為:"+$("#sex option:selected").text()); 77 alert("下拉菜單被選中項的值為:"+$("#sex").val()); 78 alert("復選框選中的個數為:"+$("input[name='check']:checked").length); 79 if($("input[name='check']:checked").length>0){ 80 var allCheckValue=""; 81 var allCheckText=""; 82 $("input[name='check']:checked").each(function(){ 83 allCheckValue+=$(this).val()+" "; 84 allCheckText+=$(this).parent(".checkCss").text()+" "; 85 }); 86 alert("復選框選中的文本為:"+allCheckText+" 值為:"+allCheckValue); 87 } 88 if($("input[name='status']:checked").length>0){ 89 alert("單選框選中的文本為:"+("input[name=′status′]:checked").parent(".redioCss").text()+"值為:"+("input[name=′status′]:checked").parent(".redioCss").text()+"值為:"+("input[name='status']:checked").val()); 90 } 91 }); 92 }); 93 </script> 94 </head> 95 96 <body> 97 姓名:<input type="text" name="userName" width="250"><br> 98 性別:<select id="sex" name="userSex" style="width: 155"> 99 <option value="1">男</option> 100 <option value="2">女</option> 101 <option value="3">不男不女</option> 102 </select><br> 103 愛好:<span class="checkCss"><input type="checkbox" name="check" value="1">旅游</span> 104 <span class="checkCss"><input type="checkbox" name="check" value="2">音樂</span><br> 105 106 <span class="checkCss"><input type="checkbox" name="check" value="3">體育</span> 107 <span class="checkCss"><input type="checkbox" name="check" value="4">文學</span><br> 108 狀態:<span class="redioCss"><input type="radio" name="status" value="1">在職</span> 109 <span class="redioCss"><input type="radio" name="status" value="2">離職</span><br> 110 簡介:<input type="text" name="note" width="250"><br> 111 <input type="button" value="提交" id="subt"><br> 112 </body> 113 </html> 114 115 5、層級元素獲取 116 $("Element1 Element2 Element3 ....") '前面父級 后面是子集 117 $("div > p") '獲取div下面的所有的 p元素 118 $("div + p") 'div元素后面的第一個 p元素 119 $("div ~ p") 'div后面的所有的 p元素 120 121 122 6、簡單對象獲取 123 $("Element:first") 'HTML頁面中某類元素的第一個元素 124 $("Element:last") 'HTML頁面中某類元素的最后一個元素 125 ("Element:not(selector)")′去除所有與給定選擇器匹配的元素,如:("Element:not(selector)")′去除所有與給定選擇器匹配的元素,如:("input:not(:checked)") 表示選擇所有沒有選中的復選框 126 $("Element:even") '獲得偶數行 127 $("Element:odd“)'獲得奇數行 128 $("Element:eq(index)") '取得一個給定的索引值 129 $("Element:gt(index)") '取得給定索引值的元素 之后的所有元素 130 $("Element:lt(index)") '取得給定索引值的元素 之前的所有元素 131 132 7、內容對象的獲取和對象可見性 133 134 $("Element:contains(text)") '元素中是否包含text文本內容 135 $('Element:empty") '獲得元素不包含子元素或文本的 136 $("Element:partnt") '獲得元素包含子元素或文本的 137 ("Element:has(selector)")‘是否包含某個元素,如:("Element:has(selector)")‘是否包含某個元素,如:("p:has(span)")表示所有包含span元素的p元素 138 $("Element:hidden") '選擇所有可見元素 139 $("Element:visible") '選擇所有不可見元素 140 141 142 8、其他對象獲取方法 143 $("Element[id]") '所有帶有ID屬性的元素 144 $("Element[attribute = youlika ]" '獲得所有某個屬性為youlika的元素 145 $("Element[attribute != youlika ]" '獲得所有某個屬性為不是youlika的元素 146 $("Element[attribute ^= youlika ]" '獲得所有某個屬性為不是youlika的開頭的元素 147 ("Element[attribute("Element[attribute= youlika ]" '獲得所有某個屬性為不是youlika的結尾的元素 148 $("Element[attribute *= youlika ]" '獲得所有某個屬性包含youlika的開頭的元素 149 ("Element[selector1][selector2][....]")′符合屬性選擇器,比如("Element[selector1][selector2][....]")′符合屬性選擇器,比如("input[id][name][value=youlika ]")表示獲得帶有ID、Name以及value是youlika 的input元素。 150 151 152 9、子元素的獲取 153 $("Element:nth-child(index)") '選擇父級下面的第n個元素 154 $("Element:nth-child(even)") '選擇父級下面的偶數 155 $("Element:nth-child(odd)") '選擇父級下面的奇數 156 $("Element:nth-child(3n+1)") '表達式 157 $("Element:first-child") '選擇父級下面的第一個子元素 158 $("Element:last-child") '選擇父級下面的最后一個子元素 159 $("Element:only-child") '匹配父級下的唯一的一個子級元素,例如dt在dl列表中唯一,那么將選擇dt 160 161 162 10、表單對象獲取 163 $(:input)//查找所有的Input元素,當然也包括下拉列表,文本域,單選框,復選框等。 164 $(:text)//匹配所有的單行文本框 165 $(:password)//匹配所有的密碼框 166 $(:radio)//匹配所有的單選按鈕 167 $(:checkbox)//匹配所有的復選框 168 $(:submit)//匹配所有的提交按鈕 169 $(:image)//匹配所有的圖像域,例如<input type="image" /> 170 $(:reset)//匹配所有的重置按鈕 171 $(:button)//匹配所有的按鈕 172 $(:file)//匹配所有的文件上傳域 173 $(:hidden)//匹配所有的不可見元素或者type為hidden的元素 174 $(:enabled)//匹配所有可用的input元素,比如radio:enabled表示匹配所有可用的單選按鈕 175 $(:disabled)//匹配所有的不可用input元素,作用與上相反 176 $(:checked)//匹配所有選中的復選框元素 177 $(:selected)//匹配所有的下拉列表 178 179 180 11、元素屬性的設置與移除 181 ("Element").attr(name)′取得第一個匹配的屬性值,比如("Element").attr(name)′取得第一個匹配的屬性值,比如("img").attr("src") 182 $("Element".attr(key,value)") '某一個元素設置屬性 183 $("Element".attr({key:value,key1:value,....})) ‘為某個元素一次性設置多個屬性 184 $("Element").attr(key,function) '為所有匹配的元素設置一個計算的屬性值。 185 $("Element").removeAttr(name)//移除某一個屬性