您好,感谢您抽出宝贵时间阅读我的问题。
我试图在下面的循环中将值设置为矩阵:
for(var i=0; i<9; i++){
for(var j=0;j<9;j++){
var aux = i.toString().concat(j.toString());
// If that I want
var num = document.getElementById(aux).innerText;
matriz[i][j] = num;
// else
var num = document.getElementById(aux).value;
matriz[i][j] = num;
}
}
我在HTML中有此表(我不会复制所有表):
<table id="tablero">
<tr>
<td> <input id="00" type="text" maxlength="1"> </td>
<td id="01"></td>
<td id="02"></td>
<td id="03"></td>
<td id="04"></td>
<td> <input id="05" type="text" maxlength="1"></td>
<td> <input id="06" type="text" maxlength="1"></td>
<td id="07"></td>
<td> <input id="08" type="text" maxlength="1"></td>
</tr>
<tr>
<td id="10"></td>
<td> <input id="11" type="text" maxlength="1"> </td>
<td> <input id="12" type="text" maxlength="1"> </td>
..
没有输入的td具有默认值。
因此,如何在上一个循环中区分它们?提前致谢
最佳答案
使用HTMLInputElement
检查元素为instanceof
var el = document.getElementById(aux);
matriz[i][j] = el instanceof HTMLInputElement ? el.value : el.innerText;
关于javascript - 如何在JavaScript中的输入值或td文本内容之间的if子句中区别,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/50018851/