hpricot:An Hpricot Showcase:Hpricot CSS Search:Searching Attributes

>> require "hpricot"
=> true
>> doc = Hpricot('<input name="foo1" checked><input name="foo2"><input name="foo3" checked>')
=> #<Hpricot::Doc {emptyelem <input checked name="foo1">} {emptyelem <input name="foo2">} {emptyelem <input checked name="foo3">}>
>> doc.search("input[@checked]")
=> #<Hpricot::Elements[{emptyelem <input checked name="foo1">}, {emptyelem <input checked name="foo3">}]>
>> doc.at("input[@name='foo1']")
=> {emptyelem <input checked name="foo1">}
>> doc = Hpricot('<input name="foo1" checked><input name="foo2"><input name="foo3" checked><input name="foo1" checked>')
=> #<Hpricot::Doc {emptyelem <input checked name="foo1">} {emptyelem <input name="foo2">} {emptyelem <input checked name="foo3">} {emptyelem <input checked name="foo1">}>
>> doc.at("input[@name='foo1']")=> {emptyelem <input checked name="foo1">}
>> doc.search("input[@name='foo1']")
=> #<Hpricot::Elements[{emptyelem <input checked name="foo1">}, {emptyelem <input checked name="foo1">}]>
>> doc.search("*[@name='foo1']")
=> #<Hpricot::Elements[{emptyelem <input checked name="foo1">}, {emptyelem <input checked name="foo1">}, {emptyelem <div name="foo1">}]>
>> doc.search("input[@name*='foo']")
=> #<Hpricot::Elements[{emptyelem <input checked name="foo1">}, {emptyelem <input name="foo2">}, {emptyelem <input checked name="foo3">}, {emptyelem <input checked name="foo1">}]>
>> doc.search("input[@name='foo']")
=> #<Hpricot::Elements[]>