Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/74.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 替换按钮将内容单击到另一个网页_Javascript_Html - Fatal编程技术网

Javascript 替换按钮将内容单击到另一个网页

Javascript 替换按钮将内容单击到另一个网页,javascript,html,Javascript,Html,我不熟悉javascript和堆栈溢出,只是想知道这是否是将button onclick中的内容替换到另一个页面的正确方法?因为它在我的情况下不起作用。这是我的代码: javascript: function newpage(){ var oldHTML = document.getElementById('cambtn').onclick; var newHTML = "window.location='http://curv.info"; document.getEl

我不熟悉javascript和堆栈溢出,只是想知道这是否是将button onclick中的内容替换到另一个页面的正确方法?因为它在我的情况下不起作用。这是我的代码:

javascript:

function newpage(){
    var oldHTML = document.getElementById('cambtn').onclick;
    var newHTML = "window.location='http://curv.info";
    document.getElementById('cambtn').onclick = newHTML;
}
html:


一般方法:

JS:

HTML:

。。。
去

虽然可以使用简单的字符串(
onclick=“somecode”
)将元素的
onclick
设置为HTML属性,但使用JavaScript无法做到这一点。相反,您应该创建一些执行所需操作的函数,并将该函数设置为
onclick
属性:

function f() { somecode }
document.getElementById("someid").onclick = f

按钮
document.getElementById(“btn”).addEventListener(“单击”,函数)(){
document.getElementById(“cambtn”).onclick=function(){
location.href=”http://curv.info";
});
});

如果iframe是一个选项,您可以执行以下操作:

<html>
<head>
    <title></title>
    <meta charset="UTF-8" />
    <style>
    #page{width:600px;height:400px;margin:0 auto;}
    </style>
    <script type="text/javascript">
    function oldhtml() { 
        document.getElementById("page").innerHTML = "<iframe src'http://www.google.com'></iframe>"  //loads html from another page

        }
   function newhtml() {
    document.getElementById("page").innerHTML = "<div style='width:100px;height:100px;background:black;color:#fff;'>NEW HTML</div>";  //loads static html 
   }
   </script>
</head>
<body>

</body>
    <button id="old" onclick="oldhtml()">Old HTML</button><br><br>
    <button id="new" onclick="newhtml()">NEW HTML</button>
    <div id="page"></div>
</html>

#页面{宽度:600px;高度:400px;边距:0自动;}
函数oldhtml(){
document.getElementById(“页面”).innerHTML=”“//从另一个页面加载html
}
函数newhtml(){
document.getElementById(“page”).innerHTML=“新建HTML”;//加载静态HTML
}
旧HTML

新HTML
也许您应该重新阅读,因为您的代码对我来说毫无意义。您的代码是将
oldHTML
设置为按钮的
onclick
,您还将按钮的
onclick
设置为字符串
newHTML
。如果只想更改url,请仅执行以下操作:
window.location=”http://www.example.com";您想更改位置还是什么。我不清楚您想要什么我想更改cambtn的原始onclick函数以更改窗口位置,而不是执行camera()。。。这有意义吗?
addEventListener
更好。@Derek我注意到OP问题中的“替换”字,这就是为什么我使用
onclick
。我指的是
onclick=“newPage()”
部分。
<button id="cambtn">...</button>
<button onclick="newPage();">Go</button>
function f() { somecode }
document.getElementById("someid").onclick = f
<button id="cambtn" onclick="camera();"><img ...></button>
<button id="btn">Button</button>

document.getElementById("btn").addEventListener("click", function(){
    document.getElementById("cambtn").onclick = function(){
        location.href = "http://curv.info";
    });
});
<html>
<head>
    <title></title>
    <meta charset="UTF-8" />
    <style>
    #page{width:600px;height:400px;margin:0 auto;}
    </style>
    <script type="text/javascript">
    function oldhtml() { 
        document.getElementById("page").innerHTML = "<iframe src'http://www.google.com'></iframe>"  //loads html from another page

        }
   function newhtml() {
    document.getElementById("page").innerHTML = "<div style='width:100px;height:100px;background:black;color:#fff;'>NEW HTML</div>";  //loads static html 
   }
   </script>
</head>
<body>

</body>
    <button id="old" onclick="oldhtml()">Old HTML</button><br><br>
    <button id="new" onclick="newhtml()">NEW HTML</button>
    <div id="page"></div>
</html>