サンプル
「,」(カンマ) は禁止文字なのだが入力できる(「OK」が表示される)
<html>
<head>
<script language="Javascript">
function sampleRegularExpression () {
if (frm.txt.value.match(/[^a-zA-Z0-9#$%&+-/*.\\|]/)) {
// 禁止文字が入力された
document.getElementById ('result').innerHTML = '<p>NG...</p>';
} else {
// OK
document.getElementById ('result').innerHTML = '<p>OK</p>';
}
}
</script>
</head>
<body>
<form name="frm">
<input type="text" name="txt">
<input type="button" name="btn" value="半角英数と#$%&+-/*.\|のみ" onclick="sampleRegularExpression()">
</form>
<p id="result">Result</p>
</body>
</html>
対応後のサンプル
* 「ハイフン(-)」の前に「\」を付与し、エスケープしている
<html>
<head>
<script language="Javascript">
function sampleRegularExpression () {
if (frm.txt.value.match(/[^a-zA-Z0-9#$%&+\-/*.\\|]/)) { <!-- ★修正個所★ -->
// 禁止文字が入力された
document.getElementById ('result').innerHTML = '<p>NG...</p>';
} else {
// OK
document.getElementById ('result').innerHTML = '<p>OK</p>';
}
}
</script>
</head>
<body>
<form name="frm">
<input type="text" name="txt">
<input type="button" name="btn" value="半角英数と#$%&+-/*.\|のみ" onclick="sampleRegularExpression()">
</form>
<p id="result">Result</p>
</body>
</html>