WEB相談室

Webページ作成に関しての何でも掲示板です。

タイトル:半角を全角に変換する。

0:[投稿] マンタ [2002/03/13 19:37 ][環境:WIN+NN UNIX系+Java]

テキストボックスに入力された半角文字を全角に変更するJavascriptあるいは手段はありますか?


1:[回答] ween [2002/03/14 08:48 ]

NN4.06 以降 IE4 以降?になりますが、

var h2z_table = new Array, i;

// 半角英数記号→全角英数記号
for ( i=0x21; i<=0x7E; i++ )
 h2z_table[i] = String.fromCharCode(i+0xFEE0);
h2z_table[0x20] = ' '; // 全角スペース
h2z_table[0x5C] = '¥'; // バックスラッシュ→全角¥記号
if (document.layers) {
 // NN4 がうまく変換できないようなので補正
 h2z_table[0x22] = '”';
 h2z_table[0x27] = '’';
 h2z_table[0x2D] = '−';
}

// 半角カナ→全角カナ
var z = '。「」、・ヲァィゥェォャュョッー'
     + 'アイウエオカキクケコサシスセソタチツテトナニヌネノ'
     + 'ハヒフヘホマミムメモヤユヨラリルレロワン';
for ( i=0xFF61; i<=0xFF9D; i++ )
 h2z_table[i] = z.charAt(i-0xFF61);

// 半角→全角変換用関数
function h2z (s) {
 return  h2z_table[s.charCodeAt(0)] || s;
}

のような感じで変換表と関数を作成すれば、

文字列.replace( /[\u0020-\u007E\uFF61-\uFF9D]/g, h2z );

で文字列を半角→全角変換できると思います。

回答(必須): 状態:

お名前(必須):

e-mail:

URL:




[戻る]

ChaichanPAPA's World