为什么需要在html中转义字符串?

Yan*_*ang 1 html sql

好吧,我知道"正确"的转义将有助于防止SQL注入.

但我看到人们在HTML中逃避价值观

<input type="text" value =/"some/" /> <!-- some escaped, why? -->
Run Code Online (Sandbox Code Playgroud)

问题是:为什么要在HTML中逃脱?

Que*_*tin 5

<input type="text" value =/"some/" /> <!-- some escaped, why? -->

这是一个语法错误.不要那样做.

使用字符引用来表示特殊字符(&amp;,&lt;,等).

为什么要在HTML中逃脱?

(假设您使用正确的语法来执行此操作):因为某些字符在HTML中具有特殊含义.例如,您不希望"(在数据中)过早地结束您的属性值,因为它可以:

  • 丢失数据
  • 丢失数据但将其显示在页面中
  • 允许第三方将JavaScript注入您的网页并窃取数据/将人员重定向到网络钓鱼站点等