2012-01-04 2 views
0

값으로 드롭 다운 옵션을 선택하려고합니다. 그러나 나는 그것을 클릭하거나 유형 기능으로 할 수없는 것 같습니다.Selenium - 드롭 다운 옵션 선택

저는 JsonWireProtocol을 사용하고 있고 간단한 호출 만하고 있지만, 잠시 동안은 계속 붙어있는 것처럼 보입니다.

는 내가이

$element = $this->get_element('payment-credit-method-cc0-expirationMonth'); 
$this->click_element($element); 

$this->type('payment-credit-method-cc0-expirationMonth', array('U+E015','U+E000','U+E015','U+E000')); 

사람이 도와 드릴까요 다음 시도했습니다?

+0

영어 문장은 쉼표가 아닌 전체 정지로 구분됩니다. 그리고 당신의 질문은 무엇입니까? 너 뭐 해봤 니? –

+0

오랫동안 일하고 나쁜 습관이 있었지만 업데이트 된 정보였습니다. –

+0

오케이. –

답변

0

이렇게하면 루비에서 어떻게 할 수 있을까요? 11 월을 월로 선택한다고 가정합니다.

@driver.find_element(:id, "payment-credit-method-cc0-expirationMonth'").find_element(:css,"option[value='11']").click 
0

값을 선택하기 전에 WaitForElementPresent() (선택한 항목에서)를 사용해보십시오. Selenium은 추측되기 전에도 그 요소를 찾으려고합니다.

+0

이미 있습니다. –

0

JsonWireProtocol 만 사용하여 Selenium 1에서 Selenium 2로 이전했습니다.

사용중인 PHP 바인딩에 따라 다음을 수행했습니다. Facebook's bindings.

코드에 대한 몇 가지 가정 사항을 작성하십시오. 난 당신이 "11월"(옵션의 볼을 선택할 수 있다고 생각 지불 - 신용 방법 - CC0-expirationMonth은 당신의 선택의 ID입니다, 당신이 선택하고있는 달 11

$this->session->element("xpath", "//select[@id='payment-credit-method-cc0-expirationMonth']/option[@value='11']")->click() 

자사의 옵션 값과 11 월이다 레이블)도이 작업을 수행합니다. 내가 SE1에 사용

$this->session->element("xpath", "//select[@id='payment-credit-method-cc0-expirationMonth']/option[text()='November']")->click() 

바인딩은 $ this->을 선택() 메소드를했다, 그리고 내가 요소를 선택하고 그것을 클릭한다하고있어 모든 실현하기 위해 나에게 조금했다 :/

0
을 페이스 북의 JsonWireProtocol PHP 바인딩을 사용

: $ s에

$el=$s->element("css selector", 'select[id="my_id"] option[value="gbp"]'); 
$el->click(); 

은 세션입니다. (Github issue)