为了账号安全,请及时绑定邮箱和手机立即绑定

为什么这个javascript函数提示text类型的nodeValue为undefined?

为什么这个javascript函数提示text类型的nodeValue为undefined?

我想点击按钮,改变<p>标签内的文本内容,可是总是提示:Uncaught TypeError: Cannot read property 'nodeValue' of undefined/////////html/////////// <input type="text" name="email" id="email" placeholder="请输入邮箱"> <button id="check-email">邮箱格式是否符合</button> <div class="email-result">请点击查询</div> /////////////js//////////// function isEmail(emailStr) {     var emailResult = document.getElementsByClassName("email-result"); console.log(typeof emailResult)            //这里输出object console.log(emailResult.firstChild.nodeValue)     //未定义 emailResult.firstChild.nodeValue = "finish your implement";        //未定义 }
查看完整描述

1 回答

已采纳
?
stone310

TA贡献361条经验 获得超191个赞

因为 var emailResult = document.getElementsByClassName("email-result");这里通过getElementsByClassName获取的是个类数组,而.firstChild.nodeValue前面需要一个单个元素;

因此需要在getElementsByClassName后面加上[0],即使你的页面上最后获取只有1个元素;

即var emailResult = document.getElementsByClassName("email-result")[0];

查看完整回答
1 反对 回复 2016-09-20
  • 1 回答
  • 0 关注
  • 1968 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信