テキスト、スペース、数字のみを入力できることを確認して、入力フィールドを検証しようとしています。これを行う最も簡単な方法は、次のような正規表現を使用することだと思いました。
function checkVal() {
var input = document.getElementById("input").value;
if (input.match(/[a-zA-Z0-9]+$/) == null) {
alert("error");
}
}
より具体的には、アンダースコア文字がこのフィールド内にないことを確認する必要があります (これは非常に重要です)。これをテストしたところ、適切に機能していないように見えますが、構文的に正しくないためではなく、間違った目的で正規表現を使用している可能性があるため、これはもっとそうだと思います.
その入力ボックスに入力するときに「アンダースコア」文字を除外する関数を書く方が簡単でしょうか?
編集:これを少し明確にするために、文字、数字、スペースのみを受け入れたいと思います。