无法在onclick fnction中执行javascript
1) 此编码正在工作无法在onclick fnction中执行javascript,javascript,html,Javascript,Html,1) 此编码正在工作 <script> function load_home(){ document.getElementById('mainpage').innerHTML = "<object width='100%' height='100%' type='text/html' data='LoginForm.aspx'></object>"; } </script> <button onclic
<script>
function load_home(){
document.getElementById('mainpage').innerHTML = "<object width='100%' height='100%' type='text/html' data='LoginForm.aspx'></object>";
}
</script>
<button onclick ="load_home()"> </button>
函数load_home(){
document.getElementById('mainpage').innerHTML=“”;
}
2) 但是当我写作的时候
<button onclick ="document.getElementById('mainpage').innerHTML = <object width='100%' height='100%' type='text/html' data='LoginForm.aspx'></object>"> </button>
它不起作用
请帮助我运行代码2,只需在脚本中添加触发器即可。使用下面的代码
<button id="clickButton"></button>
<script>
document.getElementById("clickButton").addEventListener("click", load_home);
</script>
document.getElementById(“clickButton”).addEventListener(“单击”,加载到主页);
另外,请参见您必须转义字符串中的
”
:
<button onclick ="document.getElementById('mainpage').innerHTML = '<object width=\'100%\' height=\'100%\' type=\'text/html\' data=\'LoginForm.aspx\'></object>'"> </button>
了解转义序列
这应该起作用:
<button onclick ="document.getElementById('mainpage').innerHTML = '<object width=\'100%\' height=\'100%\' type=\'text/html\' data=\'LoginForm.aspx\'></object>'"> Click Me </button>
点击我
试试看:
<button onclick='document.getElementById("mainpage").innerHTML = "<object width=\"100%\" height=\"100%\" type=\"text/html\" data=\"LoginForm.aspx\"></object>"'></button>
但是请记住,您应该在js中使用eventlistener,而不是内联js。因此,更好的解决方案是
<script>
document.getElementById("button").addEventListener("click", function() {
document.getElementById("mainpage").innerHTML = "<object width='100%' height='100%' type='text/html' data='LoginForm.aspx'></object>";
</script>
document.getElementById(“按钮”).addEventListener(“单击”,函数)(){
document.getElementById(“主页”).innerHTML=“”;
您正在将innerHTML
值设置为非字符串值。不起作用我刚刚看到了您的第二个选项(元素上的内联代码)。对于生产环境来说,这绝不是一个好主意,类似于内联样式,因为在大型HTML文件中很难找到。相反,请参阅我的答案中建议的解决方案