如何将<tag>放在src / href中

时间:2017-04-16 20:59:37

标签: javascript php html

我想要实现的是使用DOM cloneNode()按标记名称获取元素并将其克隆到另一个标记(在URL内)。

基本上我想放<tag><div class="tag"> 在另一个标记的 src href 属性中。

例如:

    <body onload="myFunction()">
    <script>
    function myFunction() {
    var itm = document.getElementsByTagName("tag1")[0].lastChild;
    var cln = itm.cloneNode(true);
    document.getElementsByTagName("tag2")[0].appendChild(cln);
    }
    </script>


    <tag1>Hello.png</tag1>


    <a href='http://example.com/<tag2></tag2>'> </a>

所以结果应该是:

    <a href='http://example.com/Hello.png'> </a>

1 个答案:

答案 0 :(得分:0)

您可以使用Element.setAttribute()更新 href src 属性,方法是使用{{3}替换字符串(即<tag2></tag2>) } <tag1>属性为<tag2>

运行下面的代码段并按下标有“复制”的按钮。请注意,使用String.replace()是因为document.addEventListener('DOMContentLoaded', function(DOMLoadEvent) { document.getElementById('copy').addEventListener('click', copyTag1); }); function copyTag1() { var innerHTML = document.getElementsByTagName("tag1")[0].innerHTML; var link = document.getElementById('link'); console.log('link.href before: ',link.href, 'innerhtml: ',innerHTML); link.setAttribute('href', link.href.replace(encodeURI('<tag2></tag2>'),innerHTML)); console.log('link.href after: ',link.href); }实际上是针对DOM属性进行编码的(即它不是单独的HTML标记)。

<button id="copy">Copy</button>
<tag1>Hello.png</tag1>
<a id="link" href='http://example.com/<tag2></tag2>'> Example Link</a>
var values = {
    delimiter: ',',
    path: 'd:/temp/users.csv'
};

db.none('COPY (SELECT * FROM users) TO ${path} WITH CSV DELIMITER ${delimiter}', values)
    .then(() => {
        console.log('Successfully saved as:', values.path);
    })
    .catch(error => {
        console.log(error);
    });