小编Jim*_*mmi的帖子

无法读取未定义的属性'replace' - 替换JS生成的HTML中的文本

我有一个ul由外部JavaScript生成的无序列表().在每个列表项中都有一条我想要删除的重复行.因为我无法修改外部javascript,我试图使用replace方法.该列表由给予每个li元素的类标识; rss-item.

以下是我的代码:

   <script>
        function myFunction() {
            var str = document.getElementsByClassName('rss-item').innerHTML; 
            var res = str.replace('Text to replace', '');
            document.getElementsByClassName('rss-item').innerHTML = res; 
        }
    </script>

    <button onclick="myFunction()">Replace</button>
Run Code Online (Sandbox Code Playgroud)

错误发生在以下行:

var res = str.replace('Text to replace', '');
Run Code Online (Sandbox Code Playgroud)

错误说明:

Uncaught TypeError: Cannot read property 'replace' of undefined
Run Code Online (Sandbox Code Playgroud)

据我所知,这可能意味着javascript要么找不到类名为'rss-item'的元素,要么找不到我想要替换的文本.我绝对肯定这是正确的类名,我试图替换的文本确实存在.是否出现此问题是因为标记是由javascript生成的?我走到了尽头.

html javascript list str-replace

1
推荐指数
1
解决办法
5万
查看次数

标签 统计

html ×1

javascript ×1

list ×1

str-replace ×1