[精讚] [會員登入]
11890

[jQuery] checkbox 及 radio 設定值

jQuery 之 checkbox 及 radio 取值及設定值的方法

此文完整連結 http://n.sfs.tw/10374

複製連結 [jQuery] checkbox 及 radio 設定值@新精讚
(文章歡迎轉載,務必尊重版權註明連結來源)
2019-10-25 14:16:16 最後編修
2016-12-05 10:15:08 By 張○○
 

自動目錄

這篇是精華,知道的人可以省你很多寶貴的時間

網路上如果搜尋 jquery radio / checkbox 取值,似乎找到的方法都不能用。以下是我試過失敗的寫法:

if($("#chk1").attr('checked')==undefined); <== X 不成功 checkbox 取值失敗
var item = $('input[@name=items][@checked]').val(); <== X 不成功 radio取值失敗,這樣會取出第一筆,無論筆是否有被選
$("input[@type=radio][@checked]").val(); <==也是失敗

checkbox 設定值

$("#chk1").attr("checked",''); //設定不打勾
$("#chk2").attr("checked",true); //設定打勾

  PHP smarty
  使用 smarty 塞值,其中{{$a.is_promote}} 的值是false或是true/1 ,你也可以直接用php塞值。
  $("#is_promote").attr("checked",{{$a.is_promote}}); //checkbox 賦值

  Javascript
  如果變數本身(假設是this)是checkbox,可以alert(this)看一下,如果是顯示 HTMLInputElement 那表示是javascript本身的物件變數
  那麼直接賦值即可
     this.checked = true;

checkbox 取值

var v=$("input[name='fetion']").is(":checked");

v=true有被打勾,否則為 false

或是

var v=$("#fetion").is(":checked");

var v= (typeof($("input[name=_dis]:checked").val()) == "undefined" )? "0":"1";

直接用三元運算子得到 v值為0或1。

  Javascript
  如果this本身是checkbox,可以alert(this)看一下,如果是顯示 HTMLInputElement
  那麼直接取值即可 this.checked 結果會是true/false

radio 賦值

$('input[name="sex"]')[1].checked = true; //radio 賦值==>第二個選項選取

$("input[name=state][value='2']").attr('checked',true); //radio 賦值==>值為2的那個選取

順便一提的,如果一個頁面有很多<input name="xxx" .... /> 的欄位,如果每個設定 id 再賦值顯然太累了,不如一行解決。

$("input[name=xxx]").val( 值 );

radio 取值

以下範例示範當使用者按下 submit ( id=sb1 ) 時的檢查動作,其中 radio 的 name=doway

$("#sb1").click(function(){
   var method =$("input[name='doway']:checked").val(); //radio 取值,注意寫法
   if( typeof(method) == "undefined"){    // 注意檢查完全沒有選取的寫法,這行是精華
   alert( "請選取操作方式!");
   return false;
}


原文 2009-10-24 22:13:02

你可能感興趣的文章

Jquery 圖片放大的工具:放大鏡 想讓網頁上的圖片局部放大,有沒有簡單好用的 jquery?

Jquery+CSS div區塊的拖拉(drag and drop)效果 網頁想要做到拖拉區塊的功能,但又不想使用他人的插件或是 jquery-ui的話,怎麼做?

[Javascript/Jquery] 移除textarea中空行、空白行。 textarea中要移除沒內容的空行、只有空白的行、只有定位字元的行

正則表達式:Email名稱防止連續輸入點(.)及下底線(_) Email的名稱中要允許特殊符號,但又不允許連續出現的正則表達式

[CKeditor4] 設定區塊樣式、段落格式、字型名稱及字型大小 CKeditor4中要自訂設定區塊樣式、段落格式、字型名稱及字型大小。

[Javascript] 陣列、陣列的操作 Javascript 的陣列操作:宣告、取值、賦值、插入或移除項目,檢查KEY、檢查是否為陣列等等

[Javascript] NaN是什麼? javascript 的NaN和取得整數

[Ckeditor4] 讀、寫與插入內容到欄位 Ckeditor4 提供非常多方法,可以插入、讀取和寫入到TEXTAREA中

[CKeditor4] 修改特殊字元 CKeditor4 中設定自己想用的特殊字元

[jQuery] select 元件的取值及給值 html中的元件select,在jquery中要如何使用?

我有話要說


限制:留言最高字數1000字,超過部分會被截掉。請注意:留言不可帶有網址,會被濾掉。 限制:未登入訪客,每則留言間隔需超過10分鐘,每日最多5則留言。

訪客留言

[無留言]

隨機好文

HP SAS硬碟leds燈號說明 HP SAS硬碟leds燈號(hp g7/g6系統適用)說明

世紀帝國征服者新版本--被遺忘的帝國 世紀帝國征服者新版本--被遺忘的帝國 世紀二代的征服者是精典遊戲中的精典,aofe更好玩...

Smarty安裝 smarty 是著名的樣版引擎,非常的好用,用多了突然發現拿掉smarty反而不會寫php了,以下是安裝過程..

[MYSQL] 設定字串欄位的預設值 新增表格的時候,字串欄位給予預設空值;數字欄位給預設數值;日期欄位給空值。

只會買到爛貨的政府採購法 政府採購的公開招標,常常就只能比價格不能比品牌,只能比價格不能比品質,只能比價格不能比口碑,只能比價格不能比信用...