日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
jQuery中RadioButtonList的功能及用法

對(duì)于RadioButtonList的功能及用法,本文將從程序規(guī)則開始介紹,在后面的實(shí)例中還涉及C#生成HTML,設(shè)置Config: AppSettings等等內(nèi)容。

成都創(chuàng)新互聯(lián)公司長(zhǎng)期為上千余家客戶提供的網(wǎng)站建設(shè)服務(wù),團(tuán)隊(duì)從業(yè)經(jīng)驗(yàn)10年,關(guān)注不同地域、不同群體,并針對(duì)不同對(duì)象提供差異化的產(chǎn)品和服務(wù);打造開放共贏平臺(tái),與合作伙伴共同營造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為榆次企業(yè)提供專業(yè)的網(wǎng)站建設(shè)、成都網(wǎng)站制作,榆次網(wǎng)站改版等技術(shù)服務(wù)。擁有10多年豐富建站經(jīng)驗(yàn)和眾多成功案例,為您定制開發(fā)。

首先介紹程序規(guī)則:

1.對(duì)以下的選擇進(jìn)行檢查,檢查是否全部選中

2,所謂的“全部選中”是指,一行中三個(gè)radiobutton必須有一個(gè)radiobutton被選中。

3. 這里一共有33個(gè)radiobutton,每三個(gè)為一組;

以下界面里面的所有元素都是從后臺(tái)生成的(當(dāng)然也可以前臺(tái)生成),后面我會(huì)把生成的代碼也附上。僅參考:)

首先看一下HTML代碼結(jié)構(gòu):

一開始我為了進(jìn)行(選擇、未選擇)Check之前,必須先找到相應(yīng)的對(duì)象。

從Html Render的結(jié)果來看,每個(gè)RadiobuttonList生成出來的Html代碼:

都是一個(gè)table,此table有三列,每列有一個(gè)type為radio的radioButton.

這樣的話,有整個(gè)生成出來的結(jié)果,就會(huì)有11個(gè)table,每個(gè)table有3個(gè)radiobutton,一共33個(gè)radiobutton.

那我們想找到table對(duì)象為ctl14,這就可以用到Jquery強(qiáng)大選擇器進(jìn)行相應(yīng)查找工作:

$("#Table1").find($("table[id=ctl14]")) 好了,我現(xiàn)在可以找到***個(gè)對(duì)象了,那其他table對(duì)象也就可以容易找到了。

這樣,注意的每個(gè)生成table的對(duì)象id都是以ctl開頭的,這樣的話,查找每個(gè)table的JQ – Code:

$("#Table1").find($("table[id^=ctl]")) 好了,現(xiàn)在我們已經(jīng)找到了每個(gè)table一級(jí)了;

接下來,我只要在找每個(gè)table中radiobutton對(duì)象就可以進(jìn)行(選擇、未選擇)Check了.

代碼為:

$("table[id^=ctl] input[type=radio]") 或者   $("table[id^=ctl]").find("input[type=radio]")

到這里我們所有要的對(duì)象都找到。是不是很輕松。

代碼分析:

 
 
 
 
  1. $("#<%= ibSubmit.ClientID%>").click(function() {   
  2.         var flag = true;   
  3.         //alert($("table[id^=ctl]").length);  
  4.         //創(chuàng)建一個(gè)checked的arr數(shù)組,用于存儲(chǔ)每個(gè)radiobutton的checked情況   
  5.          var arr = new Array;   
  6.         $("table[id^=ctl] input[type=radio]").each(function(i) {   
  7.                arr.push(this.checked);   
  8.         });  
  9.  
  10.         //然后再創(chuàng)建一個(gè)arrTrue數(shù)組,用于過濾false的arr數(shù)組  
  11.  
  12.          var arrTrue = new Array;   
  13.          $.each(arr, function(i) {   
  14.              if (arr[i] == true) {   
  15.                  arrTrue.push(arr[i]);   
  16.              }   
  17.          });  
  18.  
  19.          //當(dāng)然也可以用grep函數(shù),來簡(jiǎn)化過濾arr數(shù)組操作  
  20.  
  21.           //arr = $.grep(arr, function(n, i) {   
  22.          //return n == true;   
  23.          //});  
  24.  
  25.  
  26.          var groupLen = Math.floor($("table[id^=ctl]").length + 1 / 3);  
  27.  
  28.          //***,簡(jiǎn)單一點(diǎn)吧,只有判斷arrTrue的長(zhǎng)度是否為11,就可以。  
  29.  
  30.          //因?yàn)槭且还?3個(gè)radiobutton,每3個(gè)為一組,規(guī)則又是一組中3選1,        //所以全部選擇肯定有11個(gè)radiobutton被選中。   
  31.           if (arrTrue.length != groupLen) {   
  32.                 flag = false;   
  33.          }   
  34.      return false;  
  35.  
  36. }); 

完整代碼:

 
 
 
 
  1. $(function() {   
  2.             $("#<%= ibSubmit.ClientID%>").click(function() {   
  3.                 var flag = true;   
  4.                 var arr = new Array;   
  5.                 $("table[id^=ctl] input[type=radio]").each(function(i) {   
  6.                     arr.push(this.checked);   
  7.                 });   
  8.                 arr = $.grep(arr, function(n) {   
  9.                     return n == true;   
  10.                 });   
  11.                 var groupLen = Math.floor($("table[id^=ctl]").length + 1 / 3);   
  12.                 if (arr.length != groupLen) {   
  13.                     flag = false;   
  14.                 }   
  15.                 return false;   
  16.             });   
  17.         }); 

***附上生成Table代碼:(兩種生成方法,JQuery版本,C#版本) – (可看可不看)

jQuery版本

 
 
 
 
  1. var array = ["XXXX",""XXXX","XXX"];  
  2. $.each(array, function(i) {  
  3.          table.append(""+  
  4.                       " id='cbl_" + i + "'" + " type='checkbox' title='" + array[0] + "' />" +  
  5.                       "");  
  6. });  

C#版本

 
 
 
 
  1. private void DynamicCreateTable () {   
  2. NameValueCollection titleList = ConfigurationManager.GetSection ( sectionName ) as NameValueCollection;   
  3. {  for ( int i = 0 ; i < titleList.Count ; i++ )   
  4. { HtmlTableRow tr = new HtmlTableRow ();    
  5. {  tr.Cells.Add ( BuilderTableCell ( titleList , i ) );    
  6. tr.Cells.Add ( BuilderTableCellWithRadio ( i ) );    
  7. if ( i % 2 == 0 ) { tr.Style.Add ( "background-color" , "#ffc" );   
  8. }   
  9.  }   
  10.  tbTraDemand.Rows.Add ( tr );   
  11.               }       
  12.       }     
  13.     }        
  14.    private HtmlTableCell BuilderTableCellWithRadio ( int i )   
  15. {   HtmlTableCell tc = new HtmlTableCell ();    
  16. {  tc.ColSpan = 3;     
  17.  RadioButtonList rbl = new RadioButtonList ();    
  18.  {   rbl.Items.Add ( new ListItem ( "" , "1" ) );      
  19.  rbl.Items.Add ( new ListItem ( "" , "2" ) );    
  20. rbl.Items.Add ( new ListItem ( "" , "3" ) );    
  21.                  rbl.Style.Add ( "width" , "100%" );      
  22.                rbl.RepeatDirection = RepeatDirection.Horizontal;       
  23.           }            
  24.      tc.Controls.Add ( rbl );      
  25.        }             
  26. return tc;       }           
  27. private HtmlTableCell BuilderTableCell ( NameValueCollection titleList , int i )   
  28. { HtmlTableCell tc = new HtmlTableCell ();    
  29.          {               tc.Style.Add ( "width" , "40%" );     
  30.             tc.Align = "left";           
  31.       Label lbl = new Label ();          
  32. lbl.Text = String.Concat ( "  " , titleList.AllKeys[i] );               
  33. tc.Controls.Add ( lbl );          
  34.    }           return tc;         
  35. }  

Config: AppSettings

 
 
 
 
  1.      
  2.           name="MarketReSearch">     
  3.   name="TravelReSearchTitle" type="System.Configuration.NameValueSectionHandler"/>            
  4.       
  5.          
  6.           
  7.               
  8.              key="XXXX訂" value="1"/>     
  9.              key="XXXX訂" value="2"/>                 
  10.       

本文標(biāo)題:jQuery中RadioButtonList的功能及用法
當(dāng)前路徑:http://m.5511xx.com/article/dpeopce.html