※ ChatGPTを利用し、要約された質問です(原文:HTMLのtextで半角数字のみ入力OKにする方法)
HTMLのtextで半角数字のみ入力OKにする方法
このQ&Aのポイント
HTMLのtextで半角数字のみ入力OKにする方法について詳しく教えてください。
ASP.NETのTextBoxにonkeydown属性を追加して半角数字のみ入力できるようにする方法について教えてください。
テンキーでも半角数字のみ入力できるようにするための方法について教えてください。
HTMLのtextで半角数字のみ入力OKにする方法
お世話になります。
Windows、VisualStudio2015のASP.NET(VisualBasic)、.NET Framework4.6、
ローカルIIS、ブラウザはGoogleChrome、IE、で開発しています。
1つのページに1つのtext(ASP.NETではTextBox、名称はtxtTest)を置き、
半角数字のみ入力できるように、function(名称はnumOnly())を設定します。
HTMLのソースは以下の通りです。
functionは、<head><script></script></head>
に書いてあります。
--------------------
・・・
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title></title>
<script>
<!--
// 半角数値のみを入力可能にする
function numOnly() {
m = String.fromCharCode(event.keyCode);
if("0123456789\b\r".indexOf(m, 0) < 0) return false;
return true;
}
//-->
</script>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:TextBox ID="txtTest" runat="server"></asp:TextBox>・・・※A
</div>
</form>
</body>
</html>
--------------------
また、プログラムにおいては、
ページをロードする際に、
次のコードを実行します。
ASP.NETのTextBoxには、onkeydown属性がないからです。
ページ実行時に属性を追加します。
--------------------
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
txtTest.Attributes.Add("onkeydown", "return numOnly()")
End Sub
--------------------
また、ブラウザで実行しますと、上記の※Aの部分のソースは、
以下のようになります。
--------------------
<input name="txtTest" type="text" id="txtTest" onkeydown="return numOnly()" />
--------------------
これにより、パソコンのキーボードの上の方に横に並んでいる数字キーで、
半角数字のみ入力はできるようになったのですが、
テンキーでの半角数字入力ができません。
これをできるようにしたいのですが、
何か適切な方法がございましたら、
ご教示いただけたら幸いです。
どうそよろしくお願いします。
(functionの参照元)
http://javascript.eweb-design.com/1205_no.html
<SCRIPT>という(大文字)はASP.NETでは適切でないようで、小文字に。
「language="JAVASCRIPT"」の個所もエラーになるため外してあります。
お礼
ありがとうございます。 試してみます^^。