开发者问题收集

Javascript:错误无法设置未定义的属性‘...’

2016-11-18
525

为什么这行 JS 代码返回错误“无法设置未定义的属性...”?

document.forms["myForm"]["english_error"].textContent = "English sentence is required";

我正确引用了我的 div 元素的 id。

<input type="text" id="english" name="english" placeholder="English sentence" />
<div id="english_error" class="val_error"></div>
1个回答

仅映射表单控件,基本上只有 <input><textarea><select> 标签:

var sentence = document.forms["myForm"]["english"];

是一个 <input> 标签,因此这有效:

document.forms["myForm"]["english_error"].textContent = "English sentence is required";

english_error 是正常的 <div> 所以不起作用,您必须使用:

document.getElementById("english_error").textContent = "English sentence is required";

也可以按类名:

document.getElementsByClassName("val_error")[0].textContent = "English sentence is required";
Marcs
2016-11-19