#javascript #html #angular #typescript
#javascript #HTML #angular #typescript
Вопрос:
Я пытаюсь изменить текст, который поступает на ввод. например. если я пишу на иностранном языке, но определенному атрибуту присвоено значение True (Angular4, но я хочу, чтобы это было на typescript) — ввод автоматически изменяется на английский без необходимости в службе, которая проверяет код ключа и изменяет его.
возможно ли это в рамках чистого JS или typescript или даже Angular?
Я уже создал сервис (util), который получает код ключа из keydown и изменяет его на заглавные буквы, но это затягивает и действительно неразумно.
uppercase: {
81: "Q",
87: "W",
69: "E",
82: "R",
84: "T",
89: "Y",
85: "U",
73: "I",
79: "O",
80: "P",
65: "A",
83: "S",
68: "D",
70: "F",
71: "G",
72: "H",
74: "J",
75: "K",
76: "L",
90: "Z",
88: "X",
67: "C",
86: "V",
66: "B",
78: "N",
77: "M",
188:",",
190: "."
},
допустим, у меня есть ввод, указанный ввод установлен на русский.
если я введу русскую букву, она автоматически изменится на английскую
Комментарии:
1. Я надеюсь, что вы осознаете тот факт, что: простое преобразование символов с использованием
keyPress
событий не будет хорошей практикой. По сути, вы пытаетесь переводить языки на английский, что не сработает, если вы преобразуете символ за символом. В предложении на русском языке может быть разное количество символов, чем в английском, плюс грамматика будет другой. Вам следует пересмотреть эту функцию, которую вы пытаетесь создать2. я знаю, что не пытаюсь перевести, а просто изменяю выводимый код ключа во входных данных.