как ограничить числовое поле для ввода только чисел в oracle apex - PullRequest
0 голосов
/ 20 марта 2019

Я новичок в Oracle Apex.В настоящее время я работаю над oracle apex 5.0.Я создал элемент поля типа номер.Я хочу это поле для ввода номера мобильного телефона.Итак, я использовал маскирование формата, например «9999999999».
Теперь проблема в том, что после выполнения этого приложения я могу также вводить алфавиты.На данный момент я проверил его, но я хочу, чтобы мой элемент принимал в качестве входных данных только число.Пользователь не может добавить в него алфавиты.
Я также пытался добавить этот код input type="tel" maxlength="10" и input type="number" max="10" в мое поле HTML Form Element Attributes, а также поле HTML Form Element CSS Classes, но это не так.работа.

Независимо от того, какой запрос я вставил HTML Form Element Attributes, это приведет к проблеме, показанной на изображении Проблема с атрибутами элемента формы HTML . Теперь, какВы можете видеть на этом изображении, на этот раз я добавил <input type="tel" maxlength=10 pattern="[0-9]{3}-[0-9]{3}-[0-9]{4}"> это утверждение, но с той же проблемой.
Теперь я также попытался поместить это утверждение в HTML Form Element CSS Classes, и здесь эта проблема не появляется, но все ещеЯ могу добавить алфавиты в нем.

Пожалуйста, объясните мне, как это сделать.

Ответы [ 2 ]

1 голос
/ 21 марта 2019

Используйте JavaScript для прослушивания onkeydown события и проверки кода ключа.

Если код клавиши представляет собой букву, не допускайте ее вставки в элемент ввода. Чтобы увидеть список кодов клавиш, отметьте здесь

function validateNumber(event) {
  var keyCode = event.keyCode;
  var excludedKeys = [8, 37, 39, 46];

  if (!((keyCode >= 48 && keyCode <= 57) ||
      (keyCode >= 96 && keyCode <= 105) ||
      (excludedKeys.includes(keyCode)))) {
    console.log("alphabets are not allowed");
    event.preventDefault();

  }

  console.log("keycode: " + keyCode);
}
<form>

  <div>
    <label>Mobile Number</label>
    <input type="tel" placeholder="Enter Mobile no" onkeydown="return validateNumber(event)" required>
  </div>


</form>

Рабочая Скрипка

0 голосов
/ 21 марта 2019

Самый простой вариант - создать проверку , тип которой Элемент числовой .Для этого вам не нужно никакого дополнительного кодирования.

Кроме того, если тип данных столбца таблицы равен NUMBER, вы не сможете вставить туда ничего, кроме цифр, Oracle не разрешит вам.

...