我'的特性「長度」讓我'時試圖運行我的代碼此錯誤:無法讀取未定義4
上線31:無法讀取的不確定
<script type="text/javascript">
var winComb = [[1, 2, 3], [4, 5, 6], [7, 8, 9], [1, 4, 7], [2, 5, 8], [3, 6, 9], [1, 5, 9], [3, 5, 7]];
var cells = new Array(9);
var playerName = $_POST['player'];
var chtr = $_POST['emotion'];
var uchtr = "";
if(chtr=="xChar"){
chtr="x";
uchtr="o";
}
else{
chtr="o";
uchtr="x";
}
function player(id){
win();
insert(id, "p");
computer();
}
function computer(){
var x = 0;
for(var i=0;i<=winComb.length;i++){
for(var j=0;j<winComb[i].length;j++){
if(winComb[i][j]==chtr){
x++;
}
if(x==2){
for(var k=0;k<winComb[i].length;k++)
if(winComb[i][j]==""){
insert(winComb[i][j], "c");
}
}
}
}
}
function shortWinComb(){
var a = winComb;
for(var k=1;k<=cells.length;k++){
if(cells[k]==""){
for(var i=0;i<a.length;i++){
for(var j=0;i<=a[i].length;i++){
if(winComb[i][j]==k){
a = a - a[i];
}
}
}
}
}
return a;
}
function win(){
var x = 0;
if(!cells==null)
for(var i=0;i<=shortWinComb().length;i++){
for(var j=0;i<=shortWinComb()[i].length;i++){
if(shortWinComb()[i][j]==chtr){
x++;
}
if(x==3){
for(var k=1;k<=9;k++){
lockCell(k);
}
alert("*~*~* "+player+" Wins ! *~*~*");
}
else if(shortWinComb()[i][j]==uchtr){
x++;
}
if(x==3){
for(var k=1;k<=9;k++){
lockCell(k);
}
alert("*~*~* Computer Wins ! *~*~*");
}
}
x = 0;
}
}
function insert(id, actor){
var cell = document.getElementById(id);
if(cell.innerHTML=="")
if(actor=="p")
cell.innerHTML = "<img src=images/"+chtr+".png>";
else
cell.innerHTML = "<img src=images/"+uchtr+".png>";
for(var i=1; i<=cells.length;i++){
if(id==i){
if(actor=="p")
cells[i]==chtr;
else
cells[i]==uchtr;
break;
}
}
lockCell(id);
}
function lockCell(id){
var cell = document.getElementById(id);
cell.onclick="";
cell.style.cursor="";
}
</script>
</head>
財產「長度」
那麼在我的代碼中的問題?我是js的新手,我不太瞭解這些錯誤。
$ _POST不應該在php標籤之間? – chepe263
$ _POST是從我使用的另一個js腳本聲明的變量。 – user2996426