2012-03-29 3 views
6

Trình duyệt mặc định của Android không kích hoạt các sự kiện OnKeyUp trên các đầu vào văn bản nếu người dùng nhập các ký tự không phải latin.Sự kiện OnKeyUp trong trình duyệt Android cho các ngôn ngữ không phải là latin

Ví dụ: http://jsfiddle.net/Hzjhz/. Nó hoạt động cho các ký tự tiếng Anh nhưng không hoạt động cho các ký tự tiếng Nga và tiếng Hàn.

Có cách nào để tránh sự cố không?

+1

Android Safari ?? –

+0

@ Péter Varga: Xin lỗi, tôi có nghĩa là trình duyệt mặc định của Android. Chỉ cần nói 'Safari' vì nó sử dụng WebKit. Tôi đã thay đổi câu hỏi và thx cho thông báo. – Egor4eg

+0

có, bạn đã quan sát thấy điều đó, nó sẽ không trả lại giá trị khóa hoặc mã khóa cho backspace cũng khi bạn sử dụng phím bấm android .. – Sandy09

Trả lời

2

Tôi có thể xác nhận sự cố trong điện thoại Nexus S đang chạy ICS của mình. Mặc dù tôi không có câu trả lời trực tiếp cho điều này, tôi có thể gợi ý cho bạn một số lựa chọn thay thế.

  1. Cố gắng ràng buộc sự kiện onBlur và bạn có thể kiểm tra dữ liệu đã được người dùng nhập.
  2. Cách khác là liên kết setTimeout trên sự kiện onfocus và thử kiểm tra xem văn bản được người dùng nhập có bị thay đổi hay không.
+0

Có lẽ, tôi sẽ sử dụng giải pháp thay thế. Trên thực tế, hộp văn bản sẽ được sử dụng trong điều khiển tìm kiếm tức thời. Tôi sẽ thêm trình xử lý 'onclick' để bắt đầu tìm kiếm cũng như trình xử lý 'onkeyup'. May mắn thay, ứng dụng của tôi sẽ được người dùng nội bộ sử dụng từ công ty của chúng tôi và chúng tôi sẽ có thể dạy họ nhấn vào hộp tìm kiếm khi được yêu cầu. – Egor4eg

+0

Sẽ tốt hơn nếu sử dụng sự kiện onFocus thay vì sự kiện onclick. Nó giúp nếu ai đó chỉ cần làm một tab để có được sự kiểm soát thay vì trực tiếp nhấp vào/khai thác trên nó. – Sudar

+0

Tôi muốn thông báo cho người dùng của mình biết điều kiện tìm kiếm trong hộp văn bản và sau đó nhấp lại vào hộp văn bản. Theo như tôi biết sự kiện onFocus chỉ phát sinh một lần khi người dùng chọn hộp văn bản. – Egor4eg

0

Thử sử dụng onKeyMultiple cho các ký tự IME không phải latin. Tôi đã không sử dụng điều này cho trình duyệt nhưng trong ứng dụng cho một số trường hợp sử dụng khác.

Bạn nên thử điều này, nếu nó hoạt động, tôi sẽ nói lý do.

+0

Tôi đã thử nó. Id không hoạt động. Sự kiện 'onKeyMultiple' không được kích hoạt trong trình duyệt. – Egor4eg

0

thử InputEvent, nó hoạt động trong trình duyệt Android mặc định. không hoạt động trong chrome