没有名称验证的setAttribute

时间:2017-07-12 09:46:57

标签: javascript html dom

我需要在JS中的HTML元素中添加属性。 我正在使用setAttribute,但是我需要添加属性[foo] - 这是无效的属性名称 - 在我的情况下它很好,因为稍后在处理中将属性转换为有效值foo

问题是setAttribute抛出错误,说它是无效名称。

有没有办法在没有名称验证的情况下添加属性?

代码:


// el is HTMLInputElement

el.setAttribute("[foo]", "test");

// error - Failed to execute 'setAttribute' on 'Element': '[foo]' is not a valid attribute name.

它在Chrome v59中

用于复制它:https://codepen.io/kheim/pen/OgrZwj

谢谢!

1 个答案:

答案 0 :(得分:0)

使用[]时,您不需要setAttribute

你的JS应该是:

// el is HTMLInputElement

ele.setAttribute("foo", "test");