Javascript 为什么即使Google Inspect没有显示任何错误,.onclick仍不能以这种形式工作?
因此,我正在为我的Javascript课程(我的大部分问题都会在上面)做一个助手,并且我正在使用事件处理程序。所以我使用了一个.onclick,这样当有人点击表单时,就会显示一些东西。但当我在浏览器中运行它时,它什么也不做。HTML或Javascript中没有输入错误,因此我非常感谢您的帮助Javascript 为什么即使Google Inspect没有显示任何错误,.onclick仍不能以这种形式工作?,javascript,html,Javascript,Html,因此,我正在为我的Javascript课程(我的大部分问题都会在上面)做一个助手,并且我正在使用事件处理程序。所以我使用了一个.onclick,这样当有人点击表单时,就会显示一些东西。但当我在浏览器中运行它时,它什么也不做。HTML或Javascript中没有输入错误,因此我非常感谢您的帮助 函数onclickform(){ 文档。写下(“你找到我了!”) } document.getElementById(“formatReminder”).onlick=onclickform 5d 它不
函数onclickform(){
文档。写下(“你找到我了!”)
}
document.getElementById(“formatReminder”).onlick=onclickform代码>
5d
它不会运行,因为您调用了onlick。
应该是这样的:
HTML
函数onclickform(){
文档。写下(“你找到我了!”);
}
document.getElementById(“formatReminder”).onclick=onclickform代码>
5d
在这里写点东西:
点击我
有一些输入错误:onlick
->onclick
,而且您的目标元素的尺寸为0x0。放一些内容,它就会工作:
函数onclickform(){
警惕(“你找到我了!”)
}
document.getElementById(“formatReminder”).onclick=onclickform代码>
5d
点击我
请看代码的最后一行有一个输入错误。您键入了onlick的onlick-istead。如前所述,SPAN
元素在页面上不占用任何物理空间,除非它通过CSS或内联样式显式分配。因此,您在尝试单击它时无法找到它。下面允许您查看span
,然后单击它
但是,使用document.write
将覆盖整个页面,根据注释判断,这可能不是期望的结果,在这种情况下,您需要更新DOM元素,一种方法是更改DOM元素的innerHTML
函数onclickform(){
文档。写下(“你找到我了!”)
}
/*向前移动-此处禁止舔窗;-)*/
document.getElementById(“formatReminder”).onclick=onclickform代码>
span{宽度:1rem;高度:1rem;背景:红色;显示:块}
在这里写点东西:
aSPAN
通常没有大小(除非您在CSS中有分配规则),那么您如何确定您正在单击SPAN本身?我以为表单就是SPAN,不是吗?
-不,您将侦听器分配给此元素好的,我会尝试。您认为将onclick设置为表单会起作用吗?onclick=()=>{onclickform();}
在功能上等同于onclick=onclickform
。在onclick
之后添加()
将调用onclick
(更不用说将其设为一个会导致语法错误的右值)。OP正在尝试分配onclick
处理程序,而不是调用它。当事件发生时,浏览器将调用它。
<html>
<head>
<title>5d</title>
</head>
<body>
<form>
Write something here:
<input type="text" id="textField">
<span id="formatReminder"></span>
</form>
<script type="text/javascript" src="5d_javascript.js">
</script>
</body>
</html>
function onclickform() {
document.write("You found me!")
}
document.getElementById("formatReminder").onclick = onclickform;
function onclickform() {
document.write("You found me!")
}
document.getElementById("formatReminder").onlick = onclickform;