Javascript 找到某些单词并替换它们

Javascript 找到某些单词并替换它们,javascript,replace,innerhtml,getelementbyid,words,Javascript,Replace,Innerhtml,Getelementbyid,Words,我想找到: 纽约,取而代之的是纽约市 华盛顿,取而代之的是西雅图 佛罗里达,取而代之的是杰克逊维尔 南卡罗来纳州,取而代之的是哥伦比亚 西弗吉尼亚,换成查尔斯顿 我制作了下面的示例代码,但这似乎不起作用: 演示: 有人知道应该修复什么才能使其正常工作吗?您需要将新的字符串值应用于DOM元素 document.getElementById("replace-them").innerHTML = document.getElementById("replace-them").innerHT

我想找到:

纽约,取而代之的是纽约市 华盛顿,取而代之的是西雅图 佛罗里达,取而代之的是杰克逊维尔 南卡罗来纳州,取而代之的是哥伦比亚 西弗吉尼亚,换成查尔斯顿

我制作了下面的示例代码,但这似乎不起作用:

演示:


有人知道应该修复什么才能使其正常工作吗?

您需要将新的字符串值应用于DOM元素

document.getElementById("replace-them").innerHTML =
    document.getElementById("replace-them").innerHTML.replace("New York", "New York City");
// etc.
顺便说一句,在定义函数replaceWords之后,您还需要确保实际调用它

您还需要使用div或类似元素才能正确呈现标记


正在工作。

您需要将新字符串值应用于DOM元素

document.getElementById("replace-them").innerHTML =
    document.getElementById("replace-them").innerHTML.replace("New York", "New York City");
// etc.
顺便说一句,在定义函数replaceWords之后,您还需要确保实际调用它

您还需要使用div或类似元素才能正确呈现标记

工作。

。更换;返回替换的字符串,它不会更改DOM中的字符串

var str = 'foobar';
str.replace('foobar', 'lorem ipsum');    // Returns 'lorem ipsum', but does no DOM manipulation.
您需要将每个.replace的结果保存到一个临时变量中,然后更新DOM

function replaceWords(el) {
    el.innerHTML = el.innerHTML
                    .replace('New York', 'New York City')
                    .replace('Washington', 'Seattle')
                    .replace('Florida', 'Jacksonville')
                    .replace('South-Carolina', 'Columbia')
                    .replace('West_Virginia', 'Charleston');
}

replaceWords(document.getElementById('replace-them'));
.更换;返回替换的字符串,它不会更改DOM中的字符串

var str = 'foobar';
str.replace('foobar', 'lorem ipsum');    // Returns 'lorem ipsum', but does no DOM manipulation.
您需要将每个.replace的结果保存到一个临时变量中,然后更新DOM

function replaceWords(el) {
    el.innerHTML = el.innerHTML
                    .replace('New York', 'New York City')
                    .replace('Washington', 'Seattle')
                    .replace('Florida', 'Jacksonville')
                    .replace('South-Carolina', 'Columbia')
                    .replace('West_Virginia', 'Charleston');
}

replaceWords(document.getElementById('replace-them'));

这是因为你的TD在DOM的中间是孤儿。我用一个p替换了它,它工作了:是的。。。只需正确构造td:。如果您的td在DOM中是孤立的,那么您需要首先解决这个基本问题;谢谢你的帮助,朱利安!这是因为你的TD在DOM的中间是孤儿。我用一个p替换了它,它工作了:是的。。。只需正确构造td:。如果您的td在DOM中是孤立的,那么您需要首先解决这个基本问题;谢谢你的帮助,朱利安!