我有个问题。
<table id="mytable">
<tr>
<td>1</td>
<td>2</td>
<td>3</td>
<td> </td>
<td>4</td>
</tr>
<tr>
<td>5</td>
<td>6</td>
<td> </td>
<td> </td>
<td>7</td>
</tr>
<tr>
<td> </td>
<td> </td>
<td>8</td>
<td>9</td>
<td>10</td>
</tr>
</table>
这是剧本。
var table = document.getElementById("mytable");
for (var i = 0; i < 3; i++) {
for (var k = 0; k < 5; k++) {
var str = table.rows[i].cells[k].innerHTML;
alert(str);
}
};
我试着编码这个
alert(str.replace(/( )*/g,''))
但是空的警报框出现了。
我想弹出单元格值expect&nb sp;和空框。
显示' '。我不想要。
显示“”。我不想要。
我想要这个。谢谢你的评论。
var str = table.rows[i].cells[k].innerHTML.replace(/[&]nbsp[;]/gi,"");
if (str.length > 0) {
alert(str);
}
最佳答案
用Regex将innerHtml
的td
替换为空字符串,并检查字符串的长度。如果长度大于0,请注意。
var table = document.getElementById("mytable");
for (var i = 0; i < 3; i++) {
for (var k = 0; k < 5; k++) {
var str = table.rows[i].cells[k].innerHTML;
str = str.replace(/( )*/g, '');
if (str.length) alert(str);
}
};
<table id="mytable">
<tr>
<td>1</td>
<td>2</td>
<td>3</td>
<td> </td>
<td>4</td>
</tr>
<tr>
<td>5</td>
<td>6</td>
<td> </td>
<td> </td>
<td>7</td>
</tr>
<tr>
<td> </td>
<td> </td>
<td>8</td>
<td>9</td>
<td>10</td>
</tr>
</table>
关于javascript - 在这种情况下如何使用javascript删除?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/50384117/