2010-05-25 2 views
2

나는 테이블을 통해 가서 그 단어가 나타나면 같은 행의 라디오 버튼을 클릭하고 싶은데, 같은 열이 아니라고보고 싶습니다. 루프를 멈추십시오. 나는 지금이 순간을 가지고있다. 그러나 나는 여기서 어디로 가야할지 모른다.Watir 질문에 대한 테이블 행 및 루프

@ie.div(:class, 'tableclass').table(:index, 1).each do | row | 
    row.each do | cell | 
    if (cell.text() == 'text') 
     ##Set radio button 
break end end end 

이름과 색인으로 라디오를 선택했지만 현재 행 번호를 얻는 방법을 모르겠습니다. 감사.

답변

3

each_with_index이 필요합니다. 이런 종류의 테스트가 필요합니다.

browser.div(:class, 'tableclass').table(:index, 1).rows.each_with_index do |row, index| 
    row.cells.each do |cell| 
    if cell.text == 'text' 
     browser.div(:class, 'tableclass').table(:index, 1)[index].radio(how, what).set 
     break 
    end 
    end 
end 

관련 HTML 코드 조각을 게시하면 테스트 해 볼 수 있습니다.

+1

외부에서 행에 대한 액세스 권한이 아직 없으므로 다음 작업을 수행 할 수 있습니다. row.radio (방법, 내용) .set – mandersn

+0

좋은 점은 아마도 작동 할 것입니다. –

+0

답장을 보내 주셔서 감사합니다. 위의 라디오 설정 버튼이 작동하지 않습니다. 하지만 mandersn이 말한 것을 사용하면 효과가 있다고합니다. set 또는 browser.radio (: name => 'radioButton', : index => index) .set은 괜찮습니다. –