Node values和Element Attributes

版权声明:访问者可将本人原创或翻译内容或服务用于个人学习、研究或欣赏,以及其他非商业性或非盈利性用途,但同时应遵守著作权法及其他相关法律的规定,不得侵犯本人的合法权利。除此以外,将本人原创或翻译内容用于其他用途时,须征得本人的同意。 https://blog.csdn.net/m0_38063172/article/details/83028568

今天写用正则表达式验证表单项的js函数时遇到了一个问题,学到了新的概念,特记录在此。

为了验证表单项是不是合法,需要定义一个函数,函数在form的onsubmit事件中调用。在函数中,先获取填入的值,然后用test()函数验证。开始时我用document.getElementById().getAttribute(“value”)来获取填入的值,但是写完之后一直显示我填入的表单项非法,在网页中打印出获取到的值,根本就不是我填入的值。

然后在网上看到别人写的获取填入值的表达式是document.getElementById.value,我改了代码后果然就可以了。在谷歌上搜它们两者有什么不同,在StackOverflow上面找到了答案。

element.value的结果是element节点的值,在W3C HTML DOM标准中,HTML文档的一切都是node,元素节点的值通过它的value属性来定义。element.getAttribute(“value”)的结果是元素的value属性的值,但它是Markup中的值,也就是已经写到HTML文档中的值,因为填写表单时填写的内容并没有写到HTML文档中,所以这种方法在这里不适用。

猜你喜欢

转载自blog.csdn.net/m0_38063172/article/details/83028568
今日推荐