代码分析
复制代码 代码如下:
$("#<%= 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>");
});

广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!