的innerHTML的,我不知道很多JavaScript,但有一件事的香港專業教育學院認識是這樣做的編寫JavaScript例如document.getElementById功能
function example()
{
document.getElementById("example").innerHTML="<script>document.write(example)</script>"
}
不工作!我明白這一點,但有沒有其他方法可以做同樣的事情呢?
的innerHTML的,我不知道很多JavaScript,但有一件事的香港專業教育學院認識是這樣做的編寫JavaScript例如document.getElementById功能
function example()
{
document.getElementById("example").innerHTML="<script>document.write(example)</script>"
}
不工作!我明白這一點,但有沒有其他方法可以做同樣的事情呢?
這種方式爲我工作:
<body>
<div id="main">
</div>
<script>
// create a script element
var script = document.createElement('script');
// fill its inner html with js code
script.innerHTML = 'alert("Javascript");'
// add it inside your target div and then profit!
document.getElementById('main').appendChild(script);
</script>
</body>
編輯: 我發現更多關於在這裏你的問題,我建議你閱讀的問題,它有很多有用的答案的,它也解釋了爲什麼你第一種方法沒有奏效:Can scripts be inserted with innerHTML?
使用此代碼後,頁面加載可能這樣做才能寫一個div內部數據的簡單方法香草:
<html>
<head>
<script>
window.onload = function() {
var script = document.createElement('script');
script.innerHTML = 'alert("Javascript");'
document.getElementById('main').appendChild(script);
}
</script>
</head>
<body>
<div id="main">
</div>
</body>
</html>
我可以使用這種方法讓它在頁面加載後寫入div嗎?它似乎沒有工作 –
是的,你可以,再次檢查我的答案,我已經添加了額外的代碼 – BBog
真棒問題和答案,節省了我很多時間寫MVC視圖內的JavaScript對象的chartjs。 –
你的腳本有兩個錯誤。這是行不通的,因爲變量名和函數名等於div id,並且這種錯誤的方法適用於javascript。你寫了一個代碼給你的div,但你不運行它。你可以嘗試一下;
<div id="mydiv"></div>
<script>
function example()
{
document.getElementById("mydiv").innerHTML = eval("document.write('lololo')");
}
example();
</script>
這個工作,但用值覆蓋頁面。我希望價值作爲div的innerhtml –
頁面加載後也不能使用'document.write'。那麼你可以,它只是要炸掉這個頁面,並把它變成一個新的。 – epascarello
**爲什麼**要**在元素中編寫** * JavaScript代碼*?具體來說,這個代碼所在的函數是什麼? – Ian
,因爲我需要在用戶輸入後添加內容,這會激活該功能。它需要JavaScript,因爲它的變化,我想要添加 –