【发布时间】:2015-06-29 14:48:58
【问题描述】:
有没有办法让多个事件(例如 oninput、onblur)在 HTML 中触发完全相同的函数?
这是我要简化的 HTML:
<input id="Email" name="Email" type="text" oninput="toggleSuccessIcon(this, isEmail)" onblur="toggleSuccessIcon(this, isEmail)">
我知道这在 jQuery 中是可能的,正如 here 所解释的那样,但由于我有很多不同的输入(例如地址、邮政编码等)需要调用不同的函数(例如 toggleSuccessIcon(this, isAddresss), toggleSuccessIcon(this, isPostCode), etc.) 我想避免在 JavaScript 中进行冗长而混乱的初始化。但是,如果我在 HTML 而不是 JQuery 中执行此操作是愚蠢的,我希望能解释一下使用 JQuery 的优势。
注意isEmail、isAddress、isPostCode等都是函数名。
【问题讨论】:
-
我认为将 js 与 html 混合使用会更加混乱
-
您可以在 JavaScript 中通过
addEventListener或使用 jQuery 以更简洁的方式附加事件。 -
所有输入实际上都使用“toggleSuccessIcon”,但是第二个和可选的第三个参数因输入而异,例如
标签: javascript jquery html