HTML:onpaste =“doSomething的();”为无效的属性(HTML: onpast

2019-06-28 04:30发布

我检查我的阿马亚的HTML代码。

我已经在这条线的错误:

<input style="vertical-align:bottom;" type="text" id="doi_id" onkeydown="if (event.keyCode == 13) return false;" onpaste="parsePIIfromDOI();"/>

而对于onpaste,我收到“无效属性‘onpaste’(保存时删除)”的错误。

我不知道为什么? 非常感谢您的帮助。

Answer 1:

http://reference.sitepoint.com/html/extended-event-attributes/onpaste

“微软在Internet Explorer中使用定义的非标事件。可能在某些其他浏览器,但不能可靠地使用。兼容性没有测试这种非标准的属性。”



Answer 2:

该阿马亚编辑器进行使用文档类型定义语法检查,其内置的曲目仅包括文档类型是不允许onpaste属性。 这就是为什么你会得到错误信息。

有可能在周围阿马亚此消息没有办法。 您可以使用工具→更改文档类型→删除的文档类型,或者更好,手动更改,以显示源代码模式下,DOCTYPE声明<!doctype html> ,HTML5的DOCTYPE。 但阿马亚仍然保持核对它认为正确的规范。

阿马亚是一个编辑器(和测试平台的浏览器),而不是检查。 使用验证器来检查你的语法。 然后你可以使用<!doctype html>指定HTML5。 要注意的是HTML5有一些古怪,出乎人们的误解,这不是HTML 4.01的纯延伸。 而这显然是因为阿马亚决定删除属性,你就需要使用不同的编辑器。

无论onpaste是有用的,使用安全是一个不同的问题。

更新(2018 7月):在已经过去的这些年来, onpaste并没有成为正式的HTML的一部分,所以验证器发出关于它的错误消息。 然而,支持似乎出现例如在Chrome中。 如果你需要避免验证错误(或编辑器删除一个onpaste属性),使用JavaScript的值分配给onpaste元素节点,而不是使用HTML标记属性的属性。



文章来源: HTML: onpaste=“doSomething();” as invalid attribute
标签: html onpaste