2013-10-02 21 views
17

Metin alanına metin girdiğimde çıkarılır.Selenium Webdriver: Metin alanına metin girme

String barcode="0000000047166"; 

WebElement element_enter = _driver.findElement(By.xpath("//*[@id='div-barcode']")); 

element_enter.findElement(By.xpath("//html/body/div[1]/div[3]/div[1]/form/div/div/input")).sendKeys("barcode"); 
+5

'barcode' değişken bu 'SendKeys (barkod)' –

+0

kullanımı' SendKeys (barkod) '@SubirKumarSao diyor gibi geçmesi olduğu; div-barkod alanı muhtemelen geçersiz barkodları kaldırmak için doğrulamaya sahiptir. – Faiz

cevap

20

Subir Kumar Sao ve Faiz ile katılıyorum: Burada

kodudur.

element_enter.findElement(By.xpath("//html/body/div[1]/div[3]/div[1]/form/div/div/input")).sendKeys(barcode); 
+0

Aşağıda belirtilen kod ile yapıyorum: element_enter.findElement (By.xpath ("// html/body/div [1]/div [3]/div [1]/form/div/div/input")) .sendKeys (barkod); ancak sorun, girildikten sonra metnin otomatik olarak metin alanından kaldırılmasıdır. –

+0

"Metin girildikten sonra metin alanından otomatik olarak kaldırılır" ile ne demek istiyorsunuz? –

+0

metin, yukarıda belirtilen kodu kullanarak metin alanında görüntülenmez. (metin, metin alanına girer ve 3 ila 5 saniye arasında kaldırır.) –

8

Metne otomatik olarak metin kaldırılacağı bir alana metin girdiğim bir durum vardı. Bazı site işlevlerinden kaynaklandığına göre, numaralı telefona girdiğinizde, alana metin girdikten sonra enter tuşuna basın. Bu nedenle, barkod metninizi sendKeys yöntemiyle gönderdikten sonra, doğrudan 'enter' yazınız. Selenium Keys sınıfını içe aktarmanız gerekeceğini unutmayın. Aşağıdaki koduma bakın. Ben yardımcı olur umarım

import org.openqa.selenium.Keys; 

String barcode="0000000047166"; 
WebElement element_enter = driver.findElement(By.xpath("//*[@id='div-barcode']")); 
element_enter.findElement(By.xpath("your xpath")).sendKeys(barcode); 

element_enter.sendKeys(Keys.RETURN); // this will result in the return key being pressed upon the text field 

..

+0

Evet, Çok teşekkürler. –

+0

Teşekkürler, başka hiçbir çözüm yapılmadığında bana yardımcı oldu. –

4

kullanın bu kodu.

driver.FindElement(By.XPath(".//[@id='header']/div/div[3]/div/form/input[1]")).SendKeys("25025"); 
+0

Kod etiketlerine kod koymayı deneyin lütfen ... –

1

Bazı geçerli koşullar için JavaScript denetimi olabilir.

  1. ya metin kutusuna geçerli dize girişi için kontrol edin:
    İki şey size gereksinimlerine a/c gerçekleştirebilir.
  2. veya form/istek gönderene kadar değeri girmek için bu metin kutusuna bir döngü ayarlayın.
String barcode="0000000047166"; 

WebElement strLocator = driver.findElement(By.xpath("//*[@id='div-barcode']")); 
strLocator.sendKeys(barcode);