我有一个使用document.write()
写入页面的JavaScript函数。我的问题是,当我单击按钮调用该函数时,document.write()
将替换我已经拥有的内容。有没有办法从JavaScript写一个特定的div文本?
这是我的HTML代码:
<html>
<head>
<link href="style.css" rel="stylesheet" type="text/css">
<script type="text/javascript" src="javascript.js">
</script>
<script>
// Calling the Google Maps API
</script>
<script>
<!-- JavaScript to load Google Maps -->
</script>
</head>
<body>
<div class="content">
<div id="googleMap"></div>
<div id="right_pane_results">hi</div>this -->
<div id="bottom_pane_options">
<button onclick="todaydate();">Try It</button>
</div>
</div>
</body>
...和我的JavaScript代码(我从互联网上获得的东西只是为了测试):
function todaydate() {
var today_date = new Date();
var myyear = today_date.getYear();
var mymonth = today_date.getMonth() + 1;
var mytoday = today_date.getDate();
document.write("<h1>" + myyear + "/" + mymonth + "/"+mytoday + "/h1">);
}
我希望文本位于按钮下方。任何帮助,将不胜感激。
谢谢, 约什
答案 0 :(得分:10)
你应该避免document.write
。你最好把结果放到另一个div:
<div id="bottom_pane_options">
<button onclick="todaydate();">Try It</button>
<div id="results"></div> <!-- Added div ! -->
</div>
然后
function todaydate() {
var today_date=new Date();
var myyear=today_date.getYear();
var mymonth=today_date.getMonth() + 1;
var mytoday=today_date.getDate();
document.getElementById('results').innerHTML ="<h1>" + myyear + "/" + mymonth + "/" + mytoday + "</h1>";
}
正如您所看到的,我们正在使用results
将结果写入.innerHTML
div。
希望这会有所帮助。干杯
答案 1 :(得分:3)
HTML代码:
<div id="someclass"></div>
JS:
document.getElementById("someclass").innerHTML="<h1>some thing you want</h1>";
答案 2 :(得分:2)
要写入div,请执行以下操作:
1。给div id
或classname
。
<div id="#txt"></div>
2。在函数中使用.innerHTML
:
document.getElementById('txt').innerHTML="HELLO";
答案 3 :(得分:0)
你可以试试这个......
makeSentence(Object.assign({},defaultOptions,{name:"Michael"}))
我在onload()函数上调用它,你可以按照你的beed
调用答案 4 :(得分:0)
您需要告诉Javascript执行操作 onload
...试试看:
<script type ="text/javascript">
window.onload = function sayHi(){
document.getElementById('hi').innerHTML = 'Hi';
};
</script>
然后在您的HTML上
<span id="hi"></span>