jQuery中RadioButtonList的功能及用法实例介绍

  代码分析

  

复制代码 代码如下:

  $("#<%= ibSubmit.ClientID%>").click(function() {

  var flag = true;

  //alert($("table[id^=ctl]").length);

  //创建一个checked的arr数组,用于存储每个radiobutton的checked情况

  var arr = new Array;

  $("table[id^=ctl] input[type=radio]").each(function(i) {

  arr.push(this.checked);

  });

  //然后再创建一个arrTrue数组,用于过滤false的arr数组

  var arrTrue = new Array;

  $.each(arr, function(i) {

  if (arr[i] == true) {

  arrTrue.push(arr[i]);

  }

  });

  //当然也可以用grep函数,来简化过滤arr数组操作

  //arr = $.grep(arr, function(n, i) {

  //return n == true;

  //});

  var groupLen = Math.floor($("table[id^=ctl]").length + 1 / 3);

  //最后,简单一点吧,只有判断arrTrue的长度是否为11,就可以。

  //因为是一共33个radiobutton,每3个为一组,规则又是一组中3选1, //所以全部选择肯定有11个radiobutton被选中。

  if (arrTrue.length != groupLen) {

  flag = false;

  }

  return false;

  });

  完整代码

  

复制代码 代码如下:

  $(function() {

  $("#<%= ibSubmit.ClientID%>").click(function() {

  var flag = true;

  var arr = new Array;

  $("table[id^=ctl] input[type=radio]").each(function(i) {

  arr.push(this.checked);

  });

  arr = $.grep(arr, function(n) {

  return n == true;

  });

  var groupLen = Math.floor($("table[id^=ctl]").length + 1 / 3);

  if (arr.length != groupLen) {

  flag = false;

  }

  return false;

  });

  });

  最后附上生成Table代码:(两种生成方法,JQuery版本,C#版本) – (可看可不看)

  jQuery版本

  

复制代码 代码如下:

  var array = ["XXXX",""XXXX","XXX"];

  $.each(array, function(i) {

  table.append("<tr><td>"+

  "<input id='cbl_" + i + "'" + " type='checkbox' title='" + array[0] + "' />" +

  "</td></tr>");

  });