element.innerHTML一个不起眼的属性,我对他它又重新认识了一遍

element.innerHTML

Element.innerHTML属性设置或获取HTML语法表示的元素的后代。

替换元素的内容

设置 innerHTML 的值可以让你轻松地将当前元素的内容替换为新的内容。

如下代码举例了为

  • 元素添加新的
  • 元素的操作方法:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>innerHTML 属性</title>
</head>
<body>
<ul id="city">
    <li>邯郸</li>
    <li id="bd">保定</li>
    <li>邢台</li>
</ul>
<script>
    // 为<ul>元素添加新的<li>元素

    // 节点方式操作
    /*var newLi = document.createElement('li');
    var textNode = document.createTextNode('石家庄');
    newLi.appendChild(textNode);

    var city = document.getElementById('city');
    city.appendChild(newLi);*/

    // innerHTML方式操作
    var city =document.getElementById('city');

    var html = city.innerHTML;//获取指定元素的HTML代码
    console.log(html);
    html += '<li>石家庄</li>';
    city.innerHTML = html;
</script>
</body>
</html>

效果图如下:

通过 city.innerHTML = html 为列表新增一列。

avbDw4.png

但是有一件非常重要的事情,就是该属性存在安全问题。

innerHTML属性的问题:安全问题(innerHTML属性的值不能由用户编写)。

innerHTML 插入文本到网页中并不罕见。但这有可能成为网站攻击的媒介,从而产生潜在的安全风险问题。当插入纯文本时,建议不要使用 innerHTML

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

不苒

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值