【问题标题】:Check tag classes with watir?用 watir 检查标签类?
【发布时间】:2012-05-29 22:40:36
【问题描述】:

我有一个 div,它会根据表单是否正确提交而发生变化。
我想知道是否可以检查某个类的特定元素?

开始的元素看起来像这样。

<div id="myerrortest" class="input text"></div>

如果输入不正确,添加错误类。

<div id="myerrortest" class="input text error"></div>

【问题讨论】:

    标签: css ruby class watir


    【解决方案1】:

    试试这个:

    browser.div(:id => "myerrortest").class_name
    

    更多信息:

    http://watir.github.com/watir-webdriver/doc/Watir/HTMLElement.html#class_name-instance_method

    另一种选择是查看具有您期望的类的 div 是否存在

    browser.div((:id => "myerrortest", :class => 'input text').exists?
    

    如果使用 rSpec 类型匹配器,它会是

    browser.div((:id => "myerrortest", :class => 'input text').should exist
    

    【讨论】:

    • 您还可以查看是否存在具有您期望的 id 和类的 div,我冒昧地编辑了 Zeljko 的答案以包含该选项。
    • @ChuckvanderLinden:如果您创建了另一个答案,我会投赞成票,但现在我得到了所有的投赞成票 :)
    • 有时最好只改进一个已经正确的答案并使其变得更好,而不是有两个相互竞争的正确答案。毕竟,这不仅仅是关于谁获得最多的代表点,而是帮助我们的用户..(不过,请随意支持此评论:-))
    • 嗯,两个答案都是正确的,这不像他们在竞争。顺便说一句,赞成评论。 :)
    • 很好,我喜欢这两个想法,获取所有类的能力很有帮助,并且这个标签是否存在的简单性可以满足我的需求,而无需解析类。感谢 Željko 和 Chuck 就本网站的成员应该如何思考的问题和优秀的 cmets 提供答案。
    【解决方案2】:

    你可以用 jquery 做到这一点(或者不,jquery sintax 只是更简单,但你可以用 getelement 做任何事情)。

    这是一个通过单击按钮添加类的示例:

    $(".button").click(function(){  
    $("#myerrortest").attr("class",$("#myerrortest").attr("class")+" error");
    });
    

    这项工作也适用于 $(".classname")。 希望对你有帮助

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-10-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多