Я пытаюсь проверить поле ввода, убедившись, что можно ввести только текст, пробелы и цифры. Я думал, что самый простой способ сделать это будет использовать регулярное выражение, делая что-то вроде этого:Могу ли я использовать Regex для этой цели?
function checkVal() {
var input = document.getElementById("input").value;
if (input.match(/[a-zA-Z0-9]+$/) == null) {
alert("error");
}
}
Более конкретно мне нужно, чтобы убедиться, что символ подчеркивания не в этой области (это очень важно). От тестирования это не работает должным образом, но я думаю, что это более важно, потому что я могу использовать регулярное выражение для неправильной цели, а не потому, что оно синтаксически неверно.
Было бы проще, если бы я написал функцию, чтобы исключить символ «подчеркивания» при вводе этого поля ввода?
РЕДАКТИРОВАТЬ: Просто, чтобы сделать это немного яснее, я хочу только принимать буквы, цифры и пробелы.
@sch жаль, что я должен были яснее, только хотят принимать буквы, цифры и пространства, я буду обновлять вопрос, чтобы отразить это! – zik
Лично я использовал '/.../. Test (value)' вместо 'value.match (/.../)'. Если у вас есть вопрос, я должен проверить или попытаться заблокировать ввод, а затем подтвердить. Ввод только одного способа ввода значений поля формы. По крайней мере, с подтверждением вы можете сообщить/напомнить им, что подчеркивания недопустимы (и _why_). –