0

文本将“假”替换为“真”

来自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>");

http://jsfiddle.net/PKM6U/

4

3 回答 3

1

由于您是新手,我建议您使用框架/库来让您更轻松

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 效率极低,因此我建议您不要这样做。

于 2013-11-09T07:06:57.807 回答
0
<td  align="center" id="changeme">false</td>

在js中

document.getElementById("changeme").text="true"
于 2013-11-09T06:45:07.180 回答
0

如果您将所有“td”替换为“span”,则效果很好。拥有 td 节点本身并没有什么意义,而且在小提琴运行后它们似乎完全消失了。

于 2013-11-09T07:05:41.857 回答