javascript - onclick ="javascript:func()"与 onclick ="func()"

标签 javascript

<分区>

有什么区别吗

<input type="submit" value="Register" onclick="javascript:submitTheForm();">

<input type="submit" value="Register" onclick="submitTheForm();">

我应该在 JS 函数调用之前使用 javascript: 吗?

最佳答案

javascript:onwhatever="" 处理程序中是空操作。此属性的内容始终是 JavaScript,因此 javascript: 定义了一个 label - 但在 switch block 或循环之外(您可以使用它来 break/continue 到标签的位置)它确实什么都没有。

但是,不鼓励使用内联事件处理程序,有 better ways注册事件处理程序。


虽然问题中没有提到,但值得注意的是,在 href 属性中使用 javascript: 确实有效(实际上是必要的),但非常不鼓励由于各种原因:

  • this 没有指向元素
  • 调用函数返回值会导致浏览器离开网站
  • 单击禁用 JavaScript 的链接会中断
  • 尝试在新窗口/制表符中打开链接

因此,如果您真的必须使用内联事件,请始终使用 onclick="" 等而不使用 javascript:

关于javascript - onclick ="javascript:func()"与 onclick ="func()",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10242576/

相关文章:

javascript - 如何使用 ChartJS 设置工具提示中每个项目的颜色

javascript - 滚动不会随着 overflow-y 滚动和边框半径而改变

javascript - 带 'German Time' 选项的闹钟 - 在 JavaScript 中

javascript - 如何从具有多个组件的文件中导入组件

javascript - 当我尝试将电子商务应用程序上传到 Heroku 时,出现 redux 记录器错误

javascript - 想为我的挖矿功能添加更多滴

javascript - 有什么方法可以使用css在子类的基础上设置父背景颜色?

javascript - MongoError : E11000 duplicate key error collection: test. 用户索引:email1_1 dup key: { email1: null }

javascript - 在这种情况下 eval() 是邪恶的吗?

javascript - 在javaScript中遍历元素