HTML Form
Мне надо чтобы в ipport нельзя было писать никакими буквами кроме английских и нельзя было без наличия .tld в самом текстовом поле публиковать
типо если человек ввёл testdomain его не должно пустить но если он введёт testdomain.com то его пустит
и ещё желательно сделать чтобы можно было ввести порт сервера
чтобы если testdomain.com то оно пускало или если testdomain.com:25565 то тоже пускало
Ответы
Ответ:
<!DOCTYPE html>
<html>
<head>
<title>Форма для ввода домена и порта</title>
</head>
<body>
<form>
<label for="domain">Домен:</label>
<input type="text" id="domain" pattern="[a-zA-Z0-9]+(\.[a-zA-Z]+){1,2}" required>
<br><br>
<label for="port">Порт:</label>
<input type="text" id="port" pattern="^([1-9][0-9]{0,4}|[1-5][0-9]{5}|6[0-4][0-9]{4}|65[0-4][0-9]{3}|655[0-2][0-9]{2}|6553[0-5])(:([1-9][0-9]{0,4}|[1-5][0-9]{5}|6[0-4][0-9]{4}|65[0-4][0-9]{3}|655[0-2][0-9]{2}|6553[0-5]))?$">
<br><br>
<input type="submit" value="Отправить">
</form>
</body>
</html>
Объяснение:
В этом примере формы используется атрибут pattern, который определяет регулярное выражение для проверки ввода.
Для поля домена (input с id "domain") используется паттерн [a-zA-Z0-9]+(\.[a-zA-Z]+){1,2}, который ограничивает ввод только английскими буквами и цифрами, требует наличие .tld и не позволяет использовать другие символы.
Для поля порта (input с id "port") используется паттерн ^([1-9][0-9]{0,4}|[1-5][0-9]{5}|6[0-4][0-9]{4}|65[0-4][0-9]{3}|655[0-2][0-9]{2}|6553[0-5])(:([1-9][0-9]{0,4}|[1-5][0-9]{5}|6[0-4][0-9]{4}|65[0-4][0-9]{3}|655[0-2][0-9]{2}|6553[0-5]))?$. Он позволяет вводить порт от 1 до 65535 в формате "порт" или "порт:порт".
При отправке формы данные будут отправлены на сервер для обработки или могут быть обработаны при помощи JavaScript.