自己测试过,目前没发现逻辑存在问题。如有问题,请多多指教必定改正。
该功能主要是项目需要,假如有指定数量轮次比赛,人为将结果一次性提交,但提交之前必须先验证,如一场比赛有5局3胜决定胜负,如果你提交前面两轮为空,后面三局胜利,这明显是不符合逻辑的。
请转载此文的朋友务必附带原文链接,谢谢。
原文链接:http://xuyran.blog.51cto.com/11641754/1893245
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
|
<!DOCTYPE html>
<
html
>
<
head
>
<
meta
charset= "utf-8">
<
title
>dddd</
title
>
<
script
src
=
"jquery-1.9.1.min.js"
></
script
>
<
style
>
*{
margin: 0px;
padding: 0px;
list-style: none;
}
.win-list{
width: 300px;
padding-top: 30px;
margin: auto;
}
.win-list li{
height: 25px;
}
p{
width: 15px;
height: 15px;
border: solid 1px #96E555;
float: left;
margin-left: 15px;
}
p.active{
background: red;
}
.test{
text-align: center;
}
</
style
>
</
head
>
<
ul
class
=
"win-list"
>
<
a
></
a
>
<
li
><
p
></
p
><
p
></
p
></
li
>
<
li
><
p
></
p
><
p
></
p
></
li
>
<
li
><
p
></
p
><
p
></
p
></
li
>
<
li
><
p
></
p
><
p
></
p
></
li
>
<
li
><
p
></
p
><
p
></
p
></
li
>
</
ul
>
<
div
class
=
"test"
>
<
button
id
=
"test"
style
=
"margin: auto;"
>test</
button
>
<
button
id
=
"reset"
>重置</
button
>
</
div
>
<
body
>
<
a
>测试</
a
>
<
script
>
$(function(){
$(".win-list li p").on("click",function(){
$(this).addClass("active").siblings().removeClass("active");
})
$("#reset").on("click",function(){
$(".win-list li p").removeClass("active");
})
$("#test").on("click",function(){
var a = 0,b = 0,arr = [],arra = [],arrb = [],arrc = [];
$(".win-list li").each(function(i,v){
if($(this).find("p").eq(0).hasClass("active")){
a++;
arra.push(i);
arr.push(i);
}else if($(this).find("p").eq(1).hasClass("active")){
b++;
arrb.push(i);
arr.push(i);
}
})
if(a !== 3 && b!== 3){ //3 代表比赛赢的次数 该出判断如果胜局不等于3局,则不合法
console.log("结果不合法");
return false;
}
console.log(arr);
for(var j = 0; j < 5; j++){ //5代表比赛总局数
if(arr[j] !== j){ //如果中间有轮成绩为空,跳过,则不合法
console.log("结果不合法");
return false;
}
arrc.push(j);
}
if(arrc.toString() === arra.toString() && arrb.length !== 0){
console.log("结果不合法"); //如果a代表队前三局都胜,而b代表队后面两局还有成绩,则不合法
return false;
}
if(arrc.toString() === arrb.toString() && arra.length !== 0){
console.log("结果不合法"); //如果b代表队前三局都胜,而a代表队后面两局还有成绩,则不合法
return false;
}
console.log("结果合法");
})
})
</
script
>
</
body
>
|
本文转自 小旭依然 51CTO博客,原文链接:http://blog.51cto.com/xuyran/1893245