Javascript getElementById属性已经过了

时间:2016-07-30 01:44:52

标签: javascript html forms validation

如果我使用属性“value”,一切正常。

document.getElementById("email").value = "Email already exists."

但是当我尝试使用一个带有“ - ”的属性时,它就不再起作用了

document.getElementById("email").data-error = "Email already exists."

我尝试了['data-error']或。“data-error”之类的变体,但我似乎无法找到正确的语法。

2 个答案:

答案 0 :(得分:0)

要通过数据集对象获取数据属性,请在data-之后通过属性名称的部分获取属性 - (请注意,破折号转换为camelCase)。

在您的情况下,如果要将值设置为数据属性:

document.getElementById("email").dataset.error = "Email already exists."

来源:https://developer.mozilla.org/en/docs/Web/Guide/HTML/Using_data_attributes

答案 1 :(得分:0)

我猜您正在使用文本字段,可以通过直接调用

以两种方式访问​​value属性
document.getElementById("email").value = "Email already exists."

并使用setAttribute。

document.getElementById("email").setAttribute("value", "value of text field");

所以要设置数据错误的属性值,我们需要将其用作

document.getElementById("email").setAttribute("data-error", "Email already exists.");

并通过

获取属性值
document.getElementById("email").getAttribute("data-error");