-3

我正在研究一种可以即时更改的表单,并且我正在尝试更好地理解它。

尽管如此,我发现并输入了这个,我想知道这个陈述意味着什么,任何例子都会受到赞赏。谢谢

onclick="if(this.onchange){this.onchange();}"
4

3 回答 3

2

这是检查是否this有定义为的函数 onchange。在 javascript 中,您不需要if (this.onchange != null). 如果值为 null、未定义或具有空字符串,则 if 语句中返回的值为 false。当您不确定每个浏览器都会支持您尝试使用的任何内容时,这通常是避免 javascript 中出现空引用错误的好习惯。(或我现在失踪的其他原因)

例如,在 Google Chrome 中添加一行输出到控制台时...

console.log("output here");

如果我没记错的话,这可能会导致其他浏览器出错。处理此问题的一个好方法是使用:

if (console) { console.log("output here"); }

于 2013-10-02T14:58:12.497 回答
0

简单来说,

如果此元素具有与其onchange事件侦听器关联的功能,请执行它。 ”。

于 2013-10-02T15:08:43.947 回答
-1

这是一种检查它是否被声明的方法

if (typeof this.onchange != "undefined"){
    this.onchange();
}
于 2013-10-02T14:51:11.303 回答