HTML:在引号内的引号内使用引号

fli*_*ste 15 html javascript string quotes double-quotes

我遇到了这个问题:

<body onload="document.body.innerHTML="<script>alert('hi')</script>"">
Run Code Online (Sandbox Code Playgroud)

问题是我不能在引号内的引号内使用引号.有任何想法吗?

Que*_*tin 26

要表示""字符分隔的HTML属性中的字符,请使用该实体&quot;

我建议使用JavaScript附加事件监听器,而不是使用内部事件属性.它极大地简化了事情.

但请注意,浏览器不会执行添加到文档中的JavaScriptinnerHTML.如果要以编程方式添加脚本,请使用createElement/ appendChildet al.


Mag*_*eek 7

<body onload='document.body.innerHTML="<script>alert(\"hi\")</script>"'>
Run Code Online (Sandbox Code Playgroud)

要么

<body onload="document.body.innerHTML='<script>alert(\'hi\')</script>'">
Run Code Online (Sandbox Code Playgroud)

它确实有效,但脚本没有执行,因为它是在浏览器解析代码后添加的.

请注意,如果您希望引号内的引号在引号内的引号内,您可以这样做: <body onload="document.body.innerHTML='<script>alert(\'\\\'hi\\\'\')</script>'" >

什么是真的不可能(我认为)没有&quot;放置"'警报.