访问Ruby对象中的字符串

时间:2013-07-18 17:20:00

标签: ruby watir watir-webdriver

我有一个使用@element的Ruby对象.inspect。结果如下

#<Watir::Hidden:0x7b61410 located=false selector={:type=>"hidden", :tag_name=>"input", :id=>"foo"}>

如何访问"foo"

我已尝试@element.id(其中会找到ruby对象ID),@element[:id]@element.selector[:id]@element['selector'][:id]等。

任何帮助?

2 个答案:

答案 0 :(得分:4)

您可以使用attribute_value method

获取属性值
@element.attribute_value("id")

答案 1 :(得分:1)

通常这些是对象的实例变量。如果他们没有暴露attr_accessor,那么你就是在触摸私人数据,这通常是不受欢迎的。

如果使用以下内容存储在实例变量中,您始终可以获取这些:

@element.instance_variable_get('@selector')[:id]

我不会过于广泛地使用它,这是一种不好的做法,但有时你必须做你必须做的事。