<!DOCTYPE html>
<html>
<body>
<form name=myform>
<input type=button value="Try it now"
onClick="
s=prompt('Enter your first name','Name');
n=prompt('Enter your first name','Name');
document.write('hello'+s +n+' !')">
</form>
</body>
</html> '
在上面的代码中,我想替换&#39; hello&#39;使用下面的代码。
在你好的地方放这个代码:
<div class="hreview">
<span class="item">
Reviewed by <span class="reviewer">john paul</span>
Rating:
<span class="rating">5</span>
</div>
它应该显示代码而没有格式化我在hello处写的代码。
答案 0 :(得分:0)
你需要逃避你的报价:
document.write("<div class=\"hreview\"> <span class=\"item\"> Reviewed by <span class=\"reviewer\">john paul</span> Rating: <span class=\"rating\">5</span> </div>")
或使用单引号:
document.write("<div class='hreview'> <span class='item'> Reviewed by <span class='reviewer'>john paul</span> Rating: <span class='rating'>5</span> </div>")
答案 1 :(得分:0)
不建议在页面加载后使用document.write(),它可以用来在DOM准备时向页面添加内容。
例如:
<!DOCTYPE html>
<html>
<body>
<script type="javascript">
document.write('<h1>Mypage</h1>');
</script>
</body>
</html>
在您的情况下,页面已经被解析并转换为DOM,因此您应该直接更改DOM以反映页面上的任何更改。
<!DOCTYPE html>
<html>
<head>
<script>
function getDetails(){
var s=prompt('Enter your first name','Name');
var n=prompt('Enter your first name','Name');
document.body.innerHTML = ('hello'+s +n+' !');
}
</script>
</head>
<body>
<form name=myform>
<input type=button value="Try it now"
onClick="getDetails()">
</form>
</body>
</html>
您可以阅读有关DOM遍历的信息
答案 2 :(得分:0)
我想你正在尝试使用s
和n
变量作为你正在写入文档的更新html中的名字和姓氏,这就是我在这里所做的:
HTML:
<form name="myform">
<input type="button" value="Try it now" onclick="write_message();" />
</form>
<span id="message"></span>
JS:
function write_message() {
var s=prompt('Enter your first name','First name');
var n=prompt('Enter your last name','Last name');
document.getElementById('message').innerHTML='<div class="hreview"> <span class="item"> Reviewed by <span class="reviewer">'+s+' '+n+'</span> Rating: <span class="rating">5</span> </div>';
}
此外,作为提示,您的html存在许多问题。 inputs
应该如上所述正确关闭,最后用斜杠。任何带有字符串的属性都需要在引号中,并且所有html都是小写的,包括onclick
。