全角数字を半角に
原案:Saki 氏 (2001/04/23 登録)
フォームの電話番号などに全角の数字が入力されている場合場合でも、半角数字に変換してくれるスクリプトです。「Verify」が数字のみ、「Another」が数字とハイフン-、括弧()まで変換します。
表示サンプル
ソース記述内容
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html lang="ja">
<head>
<title>全角数字を半角に</title>
<script type="text/javascript">
<!--
function full2basic() {
var org = document.form1.tel.value;
var conv = "";
var diff = "0".charCodeAt(0) - "0".charCodeAt(0);
var ch;
for(i = 0; i < org.length; i++) {
ch = org.charAt(i);
if(ch >= '0' && ch <= '9')
conv += String.fromCharCode(ch.charCodeAt(0) - diff);
else
conv += ch;
}
document.form1.tel.value = conv;
}
function another() {
var org = document.form1.tel.value;
var conv = "";
var fulls = "0123456789−ー()";
var basics = "0123456789--()";
var ch;
var pos;
for(i = 0; i < org.length; i++) {
conv += (pos = fulls.indexOf(ch = org.charAt(i))) >= 0
? basics.charAt(pos) : ch;
}
document.form1.tel.value = conv;
}
// -->
</script>
</head>
<body>
<div style="text-align:center;">
<form name="form1">
<input type="text" name="tel" size="60">
<input name="button" type="button" onClick="full2basic();" value="Verify">
<input name="button" type="button" onClick="another();" value="Another">
</form>
</div>
</body>
</html>