2011-08-10 13 views
6

में मैं ककड़ी में एक HTML तत्व के निकटतम माता-पिता को ढूंढना चाहता हूं। बस jQuery के .closest() फ़ंक्शन की तरह करता है।.clesest() Capybara

यह मेरा (छद्म) कोड है:

aspect = find('.dropdown li:contains('+selector+')') 
    dropdown = aspect.closest('.dropdown') #<-- the closest() function does not exist 

    if not aspect.hasClass('.selected') 
    dropdown.click 
    sleep 1 
    aspect.click 
    end 

किसी को मुझे बताओ कि इस Capybara का उपयोग कर पूरा करने के लिए कर सकते हैं?

चीयर्स!

मैनुअल

उत्तर

1

यह एक सार्वभौमिक समाधान नहीं है, लेकिन अगर तुम सब करना चाहते तत्व क्लिक करें है, मैं jQuery सीधे उपयोग करने का सुझाव होगा:

page.execute_script('$(...).closest(...).click()') 

उसके अलावा, Capybara नहीं है एक .closest विधि, लेकिन कई मामलों में, चयनकर्ताओं (संभवतः XPath का उपयोग कर) के साथ अधिक रचनात्मक होने के कारण चाल हो सकती है।

संबंधित मुद्दे