文本将“假”替换为“真”
来自html的ori(不要改变):
<td align="center">false</td>
至
<td align="center">true</td>
我的 js 代码错误:
document.body.innerHTML = document.body.innerHTML.replace(/<td align=\"center\">false<\/td>/g,"<td align=\"center\">true<\/td>");
文本将“假”替换为“真”
来自html的ori(不要改变):
<td align="center">false</td>
至
<td align="center">true</td>
我的 js 代码错误:
document.body.innerHTML = document.body.innerHTML.replace(/<td align=\"center\">false<\/td>/g,"<td align=\"center\">true<\/td>");
由于您是新手,我建议您使用框架/库来让您更轻松
jQuery 有一个不错的选择器可以帮助你解决这个问题
http://jquery.com/ http://jquery.com/download/ http://api.jquery.com/contains-selector/
这段代码会做你想做的
function swapTrueFalse(){
if($("td[align=center]:contains('true')"){
$("td[align=center]:contains('true')").text('false')
}else if($("td[align=center]:contains('false')"){
$("td[align=center]:contains('false')").text('true')
}
}
我建议您向元素添加一个类,因为这将使其更有效:
<td align="center" class='true-false'>true</td>
更改代码以匹配:
function swapTrueFalse(){
var t = $(".true-false").text()
if(t === "true"){
$(".true-false").text("false");
}else{
$(".true-false").text("true");
}
}
使用正则表达式以您的方式解析 HTML 效率极低,因此我建议您不要这样做。
<td align="center" id="changeme">false</td>
在js中
document.getElementById("changeme").text="true"
如果您将所有“td”替换为“span”,则效果很好。拥有 td 节点本身并没有什么意义,而且在小提琴运行后它们似乎完全消失了。