18910140161

用锚标记替换文本,锚标记可以在单击时调用函数

顺晟科技

2021-10-06 12:46:23

249

我有一个XML字符串,它显示在spanpre标记中:

    <pre className="xmlContainer">
        <span id="xml-span"></span>
    </pre>

XML如下所示:

<root>
    <child-to-replace>
    <child-to-replace/>
    ...
<root/>

带有多个(未知)编号的updateParentScope

我替换<>以显示变量xml:

let element = document.getElementById('xml-span');
var displayXml = xml.replaceAll('<','&lt;').replaceAll('>','&gt;');
element.innerHTML = displayXml;

我还希望用调用函数updateParentScope的锚点标记替换updateParentScope开始标记的所有实例。我尝试简单地替换它:

function updateParentScope(scope)  {
    //updates scope for parent
}

useEffect(() => {
    let element = document.getElementById('xml-new');
    var displayXml = xml.replaceAll('<','&lt;').replaceAll('>','&gt;')
        .replaceAll('child-to-replace',
            '<a onclick="updateParentScope(\"sometext\")" >child-to-replace</a>')
    element.innerHTML = displayXml;)

    element.innerHTML = replaced;
}, [xml])

这会给出Uncaught ReferenceError: updateParentScope is not defined

是否有解决此问题的方法,或者替换文本的方法是错误的?


顺晟科技:

  • TAG:
相关文章
我们已经准备好了,你呢?
2024我们与您携手共赢,为您的企业形象保驾护航