2010-12-16 110 views
0

是否有离线工具可以验证某些标签是否拥有特定属性?系统HTML标签验证

我正在寻找的东西,可以验证所有:

  • form标签具有name属性。
  • divspan标签至少有一个idclass属性。

整齐有一个晦涩的选项,你可以指定这样的事情吗?

+2

不,你可能必须建立一个脚本,或者自定义现有的验证解决方案。但是这些规则是否真的具有普遍意义?你的用例是什么? – 2010-12-16 22:32:24

+0

我想在一个网站上开发硒测试,这个网站有很多嵌套的空白div。 xpath很难获得这样的元素。首选澄清网站,但我需要一些东西来轻松报告。 – 2010-12-16 22:44:26

+0

您想验证表单* do *是否具有名称属性?规范说你应该使用id来代替。 http://www.w3.org/TR/html4/interact/forms.html#adef-name-FORM – Quentin 2010-12-25 11:02:27

回答

3

简单而快速地,如果jQuery在您的页面上可用,您可以做这样的验证。

 

    $('form').each(function(){ 
     if ($(this).attr('name') === undefined) { 
      alert('There is at least one form with no name.'); 
     } 
    }); 
    $('div').each(function(){ 
     if ($(this).attr('id') === undefined) { 
      alert('There is at least one div with no id.'); 
     } 
    }); 

+0

+1,抱歉,无法抗拒使这个更好...;) – Stephen 2010-12-16 22:41:22

+0

JavaScript不会是要走的路,我需要使用爬虫来验证我的网站,并从中获取报告。 – 2010-12-17 16:00:53

1

也这是一个非jQuery的解决方案例如

 
var arr = document.getElementsByTagName('div'); 
var flag = false; 
for (var i = 0, len = arr.length; i < len; i++) { 
    if (arr[i].getAttribute('id') == null) { 
     flag = true; 
     break; 
    } 
} 
if (flag) { 
    alert('There is at least one div with no name.'); 
}