フォーラム@nifty | フォーラム・サークル | サイトマップ | ヘルプ |
掲示板 コラム お役立ち イベント リンク   | FHPGサイトマップ | お問い合わせ |
TOP > お役立ち > JavaScriptのおもちゃ箱 > 全角数字を半角に  

全角数字を半角に

原案: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>
個人情報保護ポリシー
Copyright© NIFTY 2006 All Rights Reserved.
Copyright© FHPG 2006 All Rights Reserved.