0
사용자가 TextBox 또는 TextArea에 데이터를 입력 할 때 특수 문자 (예 : 'A')를 다른 문자 (예 : 'B')로 바꾸려고합니다. 나는 그것이 (GWT의 문서에 따라) 확인을해야한다고 생각
GWT - 기본 KeyPressEvent가 작동하지 않습니다?
public void onKeyPress(KeyPressEvent event) {
if (event.getNativeEvent().getCharCode() == 65 /*for 'A'*/){
event.preventDefault();
NativeEvent event1 =
Document.get().createKeyPressEvent(false, false, false, false, 66 /* for 'B'*/);
DomEvent.fireNativeEvent(event1, theTextBox);
}
있지만, 사실 그것은 단지 event.preventDefault();
때까지 일을하고 나머지는 무시 보인다 : 내 코드는 다음과 같다. 나는 단지 'A'를 제거하지만 'B'에 대해서는 실행하지 않는다는 것을 의미합니다. 아무도 그 이유를 말해 줄 수 있습니까? 또는 다른 솔루션?
감사합니다.
야생 추측 : 'fireNativeEvent' 다음에'preventDefault'를 움직여 보셨습니까? –
@Darthenius 귀하의 추측에 힘 입어 Firefox 충돌이 발생합니다. 편집기 동작을 구현하려는 방식을 변경했습니다. 키 누르기에서 새 이벤트를 발생시키는 대신 텍스트 상자 값 ('getValue()')을 얻고, 입력 된 문자를 새로운 것으로 바꾸고'setValue()'를 호출합니다. 감사. – Hamzeh