2013-02-13 29 views
6

Tôi cần tự động thao tác nhấn phím 'Enter' trên bàn phím sau khi nhập văn bản vào trường văn bản. Tôi đã thử @browser.send_keys :enter nhưng điều đó không thực hiện hành động. cũng đã thử @browser.text_field(:name => 'q').send_keys :enter hoặc @browser.text_field(:name => 'q').focus và sau đó gửi send_keys. Nhưng đã không giúp đỡ.Làm cách nào để gửi đột quỵ chính Nhập bằng Watir

@browser.send_keys("{ENTER}") 

không giúp này quá, điều này thực sự loại ("{ENTER}")

Xin vui lòng cho tôi biết cách khác để làm gì?

Trả lời

7

browser.send_keys :enter nên thực hiện công việc. Vui lòng cung cấp liên kết đến trang, liên kết đến một trang tương tự hoặc HTML có liên quan.

+0
+0

Có thể ai đó plz giúp tôi ra, cấp bách .. Tôi thấy những điều này hoạt động ở trường văn bản tìm kiếm của google.com. Nhưng không phải tại ứng dụng của tôi: (bất kỳ suy nghĩ nào? – user1771980

+2

@ user1771980, bạn có thử hỏi các nhà phát triển xem họ đang nghe sự kiện nào không? –

5

thử browse.send_keys: trở về tìm thấy nó ở đây http://watirmelon.com/about/

+1

Đây là [Danh sách đầy đủ các phím đặc biệt] (http://watirmelon.com/2011/07/19/gửi-đặc biệt-keys-to-watir-webdriver /) – TrinitronX

0

Với HTML:

<input type="text" size="30" class="searchText" dojoattachpoint="_searchTextAP" id="xwt_widget_uishell_Header17_2_search_searchTextAP" dojoattachevent="onfocus:_onFocus_searchTextAP,onblur:_onBlur_searchTextAP, onkeyup:_onKeyUp_searchTextAP"> 

Dường như yếu tố đang lắng nghe cho những sự kiện này (thông qua võ đường): onfocus, onblur, onKeyUp

Để kích hoạt các sự kiện này, bạn sẽ cần phải sử dụng một cái gì đó như thế này:

browser.text_field(:id => /.*searchTextAP$/).focus 
browser.element(:id => 'someOtherElement').focus 
browser.text_field(:id => /.*searchTextAP$/).fire_event "onkeyup" 

Nếu bạn muốn gửi biểu mẫu, bạn có thể cần phải bấm vào nút gửi (kể từ khi bạn đề cập đến đánh :enter):

browser.button(:type => 'submit').click 

Nếu bạn thực sự muốn chỉ gửi :enter quan trọng, một trong những các câu trả lời khác sẽ hoạt động.