列、行和正方形上的Javascript表验证

列、行和正方形上的Javascript表验证,javascript,html,css,arrays,validation,Javascript,Html,Css,Arrays,Validation,如何验证值(数字)仅存在于列、行或正方形上一次 我用数组填充了一个表,填充该表后,我想验证一个数字是否只存在于一行、一列或一个正方形上,并最终为满足此条件的重复数字提供一个错误 var-arr=[1,2,3,4,5,6,7,8,9]; Array.from(document.getElementsByClassName('cell')).forEach(function(e,i){ e、 textContent=arr[Math.round(Math.random()*(arr.length-

如何验证值(数字)仅存在于列、行或正方形上一次

我用数组填充了一个表,填充该表后,我想验证一个数字是否只存在于一行、一列或一个正方形上,并最终为满足此条件的重复数字提供一个错误

var-arr=[1,2,3,4,5,6,7,8,9];
Array.from(document.getElementsByClassName('cell')).forEach(function(e,i){
e、 textContent=arr[Math.round(Math.random()*(arr.length-1));
});
.container{
最小高度:100vh;
宽度:100%;
显示器:flex;
对齐项目:居中;
证明内容:中心;
页边距底部:0;
}
.桌子{
显示:表格;
边框:2px实心#444;
边界塌陷:塌陷;
位置:相对位置;
}
.行{
显示:表格行;
位置:相对位置;
z指数:-1;
}
.细胞{
显示:表格单元格;
填充:8px;
边框:1px实心#ff0000;
文本对齐:居中;
}
.cell:n子元素(2),.cell:n子元素(4):n子元素(-n+3){右边框:5px实心#555;}/*垂直*/
.行:第n个子(3).单元格,.行:第n个子(6).单元格{边框底部:5px实心#555;}/*水平*/

var-arr=[1,2,3,4,5,6,7,8,9];
Array.from(document.getElementsByClassName('cell')).forEach(function(e,i){
e、 textContent=arr[Math.round(Math.random()*(arr.length-1));
});
函数columnCount(columnIndex,值){
var计数=0;
//对于每行,获取第n个跨度,
$(“.table.row span:n个子(“+(columnIndex+1)+”)。每个(函数(i,e){
if(e.innerHTML==值)count++;
});
返回计数;
}
函数行计数(行索引,值){
var计数=0;
$(“.table.row:n个子(“+(rowIndex+1)+”)span”)。每个(函数(i,e){
if(e.innerHTML==值)count++;
});
返回计数;
}
函数allCount(值){
var计数=0;
$(“.table.row span”)。每个(函数(即,e){
if(e.innerHTML==值)count++;
});
返回计数;
}
console.log(“allCount(6):“+allCount(6));
log(“columnCount(0,6):”+columnCount(0,6));
log(“rowCount(0,6):”+rowCount(0,6))
.container{
最小高度:100vh;
宽度:100%;
显示器:flex;
对齐项目:居中;
证明内容:中心;
页边距底部:0;
}
.桌子{
显示:表格;
边框:2px实心#444;
边界塌陷:塌陷;
位置:相对位置;
边缘底部:100px;
}
.行{
显示:表格行;
位置:相对位置;
z指数:-1;
}
.细胞{
显示:表格单元格;
填充:8px;
边框:1px实心#ff0000;
文本对齐:居中;
}
.cell:n子元素(2),.cell:n子元素(4):n子元素(-n+3){右边框:5px实心#555;}/*垂直*/
.行:第n个子(3).单元格,.行:第n个子(6).单元格{边框底部:5px实心#555;}/*水平*/


不幸的是,我正在使用jQuery:| jQuery是JavaScript。如果您使用的是jQuery,那么就可以使用JavaScript。一旦你得到了这些数字,你想对它们做什么?实际上,有一个矩阵,我应该验证一个条目在一行、一列或一个正方形上是否存在重复,如果存在重复,我应该给出一条警告消息。基本上与数独游戏中的验证列、行和方几乎相同……那么,现在很容易做到这一点!如果
..
.change()
'd:
$(“.sudoku number field”).change(function(){var rowIndex=$(this).index(.sudoku number field”);var value=$(this).text();var columndex=$(this.parent().index(.row”);if(columnCount(columndex,value)!=1){console.log(“多个”+value+“在列中。”);}else if(rowCount(rowIndex,value)>1){console.log(“行中有多个“+value+”);}else console.log(“一切正常”);
我将添加到答案中,以便更容易查看。