2013-08-27 67 views
0

我在学习cshtml/js,我不太清楚如何替换文本块。这里是我的代码:HTML代码块替换

<!DOCTYPE html> 
    <html> 
    <head> 

     <p id = "Jonny">Jonny the giant </p> 
     <p> hi there <b id ="mytext"> dood! </b></p> 

    <script> 
     function Replace() { 
      y = document.getElementById("mytext"); 
      y.innerHTML = "new string";    @* what I want to do --> document.getElementById("Jonny");*@ 
     } 
    </script> 

    <button 
     type = "button" onclick = "Replace()" > 'MAGIC SWAP' 
    </button> 

    </body> 
    </html> 

我想用文字的另一块,我已经与识别和ID名称

+1

写'y.innerHTML = document.getElementById('Johnny')。innerHTML'有什么问题? –

+0

你应该整理你的html。你正在混合'head'和'body'的内容。在语法上该片段不符合规格。 – collapsar

+0

这有效!但我不明白为什么innerHTML到最后。 – Liondancer

回答

1

貌似这个替换文本的块是你追求的。 document.getElementById("mytext").innerHTML = document.getElementById("Jonny").innerHTML;

这是您的HTML的清理版本。

<!doctype html> 
<html lang="en"> 
<head> 
    <meta charset="UTF-8"> 
    <title>Document</title> 

    <script> 
    function Replace() { 
    document.getElementById("mytext").innerHTML = document.getElementById("Jonny").innerHTML; 
    } 
</script> 
</head> 
<body> 
    <p id="Jonny">Jonny the giant</p> 
    <p>Hi there <b id="mytext"> dood! </b></p> 

    <button type="button" onclick="Replace()">MAGIC SWAP</button> 
</body> 
</html>