Javascript HTML:在引号中使用引号
我被这个问题困住了:Javascript HTML:在引号中使用引号,javascript,html,string,quotes,double-quotes,Javascript,Html,String,Quotes,Double Quotes,我被这个问题困住了: <body onload="document.body.innerHTML="<script>alert('hi')</script>""> 问题是我不能在引号中使用引号。 有什么想法吗? <body onload='document.body.innerHTML="<script>alert(\"hi\")</script>"'> 或 它确实可以工作,但是脚本不会执行,因为它是在浏览器解
<body onload="document.body.innerHTML="<script>alert('hi')</script>"">
问题是我不能在引号中使用引号。
有什么想法吗?
<body onload='document.body.innerHTML="<script>alert(\"hi\")</script>"'>
或
它确实可以工作,但是脚本不会执行,因为它是在浏览器解析代码之后添加的
请注意,如果您想在引号内的引号内加引号,您应该这样做:
如果没有“
”,我认为真正不可能的是将“
和”
放在警报中。要在由“
字符分隔的HTML属性中表示”
字符,请使用实体“
不过我还是建议不要使用内在的事件属性,它可以大大简化事情
但是请注意,如果要以编程方式添加脚本,请使用
createElement
/appendChild
等工具。Gah!首先,不要这样做。:D
比如:
<body></body>
<script>
window.onload = function () {
document.body.innerHTML = "<script>alert('hi')</script>";
}
</script>
您可以使用反引号(`)、单引号和双引号的组合 代码:
简单转义在字符串中不起作用吗?@Keshi-定义“简单转义”。这样做你打算解决什么问题?即使你解决了引用问题,代码也不会做任何事情。当你设置innerHTML
时,浏览器不会评估脚本内容。这并不能解决使用引号内的引号内的引号”在all@InsOp-有时,问题标题仅捕获问题的一部分或看待问题的一种方式。原始问题中提供的代码不仅仅是“在引号中使用引号”的问题" . . . OP试图实现一个特定的功能,多层次的引用给他带来了方法上的问题。解决他的问题的几种方法之一是删除导致需要所有这些引用层的逻辑(我记录的方法)。它可能没有回答标题中的问题,但它确实解决了他的问题。我们可以清楚地看到,这是一个简化的示例,因此我们可以准确地解决“在引号中使用引号”的问题@InsOp-只需按照网站指南的建议:“仔细阅读问题。具体来说,这个问题要求什么?确保你的答案提供了这一点——或者是一个可行的替代方案。答案可以是“不要那样做”,但也应该包括“试试这个”。任何让提问者朝着正确方向前进的答案都是有帮助的,但一定要在答案中提及任何限制、假设或简化。简洁是可以接受的,但更完整的解释更好。”其他人试图帮助OP正确使用引用,我试图帮助他根本不用使用它们。
<body></body>
<script>
window.onload = function () {
document.body.innerHTML = "<script>alert('hi')</script>";
}
</script>
<body></body>
<script>
window.onload = function () {
document.body.innerHTML = "some text";
alert('hi'); // if you really want to test that the JS is working after load.
}
</script>