在我看来,警告框只用在浏览器不支持其他显示错误信息的办法的时候。W3C建议我们在表单项的附近显示错误信息。这是一种很好的办法,所以我们只在浏览器不支持这种高级的办法的时候才使用警告对话框。 例子 试试下面的例子。每一项都是必须的。另外我会坚持email项是否有@符号。如果没有也会提示错误信息。 解释 首先我们坚持是否支持W3C DOM。这个例子能够在mac上的IE工作,但是如果在其他页面上不能工作很正常。因为那个浏览器对W3C DOM的支持还不够,不能应对所有情况。 然后我们创建了onsubmit的事件处理程序,这个程序调用我们的验证函数validation()。 validate() 我们假设表单是验证通过了的(validForm=true),我们设置firstError=null。最终我们会给第一个错误元素一个焦点。然后创建一个字符串:errorstring,这个包含所有的错误信息。这个只针对W3C DOM浏览器。 这个vlidate()函数的核心和平常的一样。按照你想的任何顺序检查错误。当你发现了一个错误,调用writeError()然后传递给他错误的表单项和错误信息。 如果浏览器不支持W3C DOM,那就用errorString生成一个警告框。你或许想修改一下警告框的内容。 为了给用户方便,把焦点设置在第一个错误的元素上。 最后返回validaForm,如果还是true就提交表单,如果不是就停止提交。 writeError() 这个函数用来把错误信息输出到表单项上。如果失败,说明浏览器不支持W3C DOM,然后就把错误信息发送到errorstring。 这个函数会传递一个表单项和一条错误信息。 首先我们设置validForm为false:这个表单填写不正确,不应该被提交。 然后检测表单项是否已经有了一个错误提示。如果有了,就返回到validation()函数,我可不想再同一项后面有两个错误提示。 if (obj.hasError) return;检查浏览器是否支持W3C DOM: 接着给错误表单项设置一个onchange的事件处理程序: 创建一个<span>来装在错误信息,并且设置它的类为"error"。在CSS里面设置要呈现的样式。 给<span>添加一个错误信息的文本节点。 然后把这个<span>添加到相应的表单项后买(在这个例子中,每个表单项都有一个<p>标签)。 最终,给这个表单设置hasError属性。这个属性既可以用来说明有错误的表单项也可以方便将来移除错误信息。 如果这时候validForm的值还是true那么将firstError设置为现在的元素。以便于将来设置焦点。 每一个错误表单项的onchange的事件处理程序都指向这个函数。如果用户修改了相应的表单项,我们礼貌的假设错误已经修正了。因此错误信息应该消失。 首先移除表单项的类中的error项。这个用来移除特别的错误样式。 然后移除错误信息。hasError属性指向包含该信息的<span>,所以我们从表单项的父元素移除它。 翻译地址: 转载请保留以下信息 作者:北玉(tw:@rehawk)
推荐整理分享JavaScript DOM学习第八章 表单错误提示(js domcontentloaded),希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:js dom操作方法,js中dom的用法,javascriptdom编程,js dom操作方法,javascript中dom的含义,js domcontentloaded,js中dom的用法,javascript中dom的含义,内容如对您有帮助,希望把文章链接给更多的朋友!
JavaScript DOM 学习第九章 选取范围的介绍 虽然我们会讲解用程序创建范围对象,但是我们把精力主要集中在如何将用户的选取范围转换成为W3C范围或者微软的文档范围对象。什么是范围范围是
JavaScript CSS修改学习第一章 查找位置 offset在所有的浏览器里面元素的offsetTop和offsetLeft两个属性都是很有用的。他们会给出你元素相对于父元素的坐标位置。这段代码会向上查找offsetParent,
JavaScript CSS修改学习第二章 样式 另外,有时候你也许想知道添加到一个元素或者链接上的样式的具体内容。而style属性只能读取元素的内联形式的样式,所以如果你想读取其他样式就