我正在研究一种可以即时更改的表单,并且我正在尝试更好地理解它。
尽管如此,我发现并输入了这个,我想知道这个陈述意味着什么,任何例子都会受到赞赏。谢谢
onclick="if(this.onchange){this.onchange();}"
我正在研究一种可以即时更改的表单,并且我正在尝试更好地理解它。
尽管如此,我发现并输入了这个,我想知道这个陈述意味着什么,任何例子都会受到赞赏。谢谢
onclick="if(this.onchange){this.onchange();}"
这是检查是否this
有定义为的函数 onchange
。在 javascript 中,您不需要if (this.onchange != null)
. 如果值为 null、未定义或具有空字符串,则 if 语句中返回的值为 false。当您不确定每个浏览器都会支持您尝试使用的任何内容时,这通常是避免 javascript 中出现空引用错误的好习惯。(或我现在失踪的其他原因)
例如,在 Google Chrome 中添加一行输出到控制台时...
console.log("output here");
如果我没记错的话,这可能会导致其他浏览器出错。处理此问题的一个好方法是使用:
if (console) { console.log("output here"); }
简单来说,
“如果此元素具有与其onchange
事件侦听器关联的功能,请执行它。 ”。
这是一种检查它是否被声明的方法
if (typeof this.onchange != "undefined"){
this.onchange();
}