• 締切済み

数字の1文字目を消したい

<FORM name="test"> <INPUT TYPE="text" name="textbox" size=10"> 上で作ったテキストボックスに「0123456789]と入力したとします。 入力された値の先頭が0であれば、0を消すという操作を行いたいと思っています。 if(document.test.textboc.value.charAt(0)==0)で、先頭が0かどうかの判定ができると思うのですが、 先頭が0だったとき、「123456789」を元のテキストボックスに戻すか、もしくは別に用意した変数に格納する と言うことは出来ませんか? 0から始まる数値を入力させたくないのです。 良いアイディアをお願いします。 色々と考えてみたのですが、

みんなの回答

  • dell_OK
  • ベストアンサー率13% (740/5645)
回答No.2

これでもいけるのかな。 正確な処理ではないけど、同様の動作はしそうです。 document.test.textbox.value = Number(document.test.textbox.value);

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.1

たとえばkeyup <script> function check(obj){ obj.value=obj.value.replace(/^0+/,""); } </script> <INPUT TYPE="text" name="textbox" size=10" onkeyup="check(this)">

関連するQ&A

  • textbox内の文字数を判別しfocusを移動させる

    textbox内の文字数を判別しfocusを移動させるプログラムを書いたのですが、2つ目のtextboxから記入したりするとうまく動作しません。どうしたらいいのでしょうか?カーソルがどのtextboxにあるか(どのtextboxにfocusしているか)を参照しようとしたのですがそのような関数はあるのでしょうか?教えてください。 <html> <head><title>checkLength</title> <script language="JavaScript"> <!-- document.onkeyup=checkLength; function checkLength() { if(document.form1.text1.value.length==3) document.form1.text2.focus(); if(document.form1.text2.value.length==5) document.form1.text3.focus(); } //--> </script> </head> <body bgcolor="#ffffff"> <form name="form1">半角英数で入力してください。<br> 1...<input type="text" name="text1" size="7"> 3文字入力するとカーソル移動<br> 2...<input type="text" name="text2" size="7"> 5文字入力するとカーソル移動<br> 3...<input type="text" name="text3" size="7"> </form> </body> </html>

  • Netscapeだと文字化け!

    まずは下記のHTMLをご覧下さい。 <html> <head> <title>tes</title> </head> <SCRIPT LANGUAGE=JAVAScript> <!-- function cp_text( ) { document.fr_test.right.value = document.fr_test.left.value ; } function cp_text1( ) { document.fr_test.right.value = escape(document.fr_test.left.value) ; } function cp_text2( ) { var n = unescape(document.fr_test.right.value) ; document.fr_test.right.value = n; } //--> </SCRIPT> <body> <form name="fr_test"> テキスト1 <input type="text" name="left" size="10" maxlength="10"><BR> テキスト2 <input type="text" name="right" size="10" maxlength="10"><BR><BR> <input type="button" name="btn_tes" value="コピー開始" onclick="cp_text()"><BR> <input type="button" name="btn_bin" value="テキスト2をHEX変換" onclick="cp_text1()"> <input type="button" name="btn_bin" value="テキスト2をDEC変換" onclick="cp_text2()"> </form> </body> </html> ------------------------------------------------ 以上のように記述されたHTMLがあります。 これをNetscapeで起動させるとテキストボックスが2つ表示されます。 ここで「テキスト1」の方に(1)、(2)みたいなコード(ローマ字でしょうか?) これを入力させて下にある「コピー開始」ボタンを押すと テキスト2の方へ値がコピーされてしまうのですが、 ローマ字文字が文字化けしてしまいます。 これをIEで起動すると文字化けはおきないのですが。 これをNetscape上で文字化けを起こさずにコピーすることは できないのでしょうか?

    • ベストアンサー
    • HTML
  • フォームに表示される文字をセンタリングさせたい。

    Javascriptの初心者です。宜しくお願いします。 テキストエリアが2つあったとします。 1のテキストエリアにある値を入力してボタンを押すと、 2のテキストエリアに1で入力した値をそのまま表示させ、 尚且つ表示された値をフォーム内でセンタリングさせたいのですが どうすればよいのかわかりません・・・。 ご存知の方がいらっしゃいましたら教えて下さい。 どうぞ宜しくお願い致します。 <html> <head> <script language="JavaScript"> <!-- function my1() { a=document.form1.text1.value; document.form1.text2.value=a; } //--> </script> </head> <body> <form name="form1"> <input type="texterea" name="text1"> <input type="texterea" name="text2"> <input type="button" value="CLICK!" onClick="my1()"> </form> </body> </html>

  • JavaScriptの値を、cgiに渡す方法を教えてください。

    JavaScriptの値を、cgiに渡す方法を教えてください。 jsファイルの変数に、テキストボックスの入力値が入っています。 それを、cgiに渡して、その変数の値を、ファイルに 書込みたいと考えています。 __test.html_________ <head><script src="keep.js"></script></head> <form name="f1" action="keep.js"> <input type="text" name="a_text"> <input type="button" value="クリック" onclick="keep()"> </form> _________________________ ___keep.js_______________ function keep() { var a_text = document.f1.a_text.value; ■この変数「a_text」をcgiファイルに渡したいです。 } __________________________ __●.cgi_______________ ■なんだかの方法で、上記keep.jsの変数、a_textを取得して、 この●.cgiでファイルをopenして、a_textの値を 書込みたいです。 ______________ よろしく、お願いします。

  • disabledの点で。2

    また同じソースでの質問なのですが、以下のようなソースで、1のテキストボックスに過去に入力したもの(プルダウンみたいに下がって出てくる履歴のようなもの)を選択すると、2の方の入力ができなくなります。履歴の数字を入れても2の方に記入できるようにするにはどのようにしたら良いのでしょうか。また、これらの処理を行うとき、onChange以外のものを使ってできるのでしょうか?大変困っております、よろしくお願いします。 <html> <head> <title></title> <script language="JavaScript"> <!-- function setTF(){ if(document.form1.text1.value=="") document.form1.text2.disabled = true; else document.form1.text2.disabled = false; } //--> </script> </head> <body> <form name="form1"> 1<INPUT type="text" name="text1" onChange="setTF()"> 2<INPUT type="text" name="text2" disabled> <INPUT type="submit" value="登録" onClick="return setTF()" name="submit"> </form> </body> </html>

  • javascriptのtextbox

    こんばんは。 <html> <body> <center> <br><br> <form name="fuji"> TEXT BOX<br> <input type="text" name="tex"> </form> <SCRIPT type="text/javascript"> var i; i="ABC" document.write("<input type='button' value='↑を変数iに代入' onClick='i=(document.fuji.tex);'>"); document.write("<br><input type='button' value='表示' onClick='document.write(i);'>"); </SCRIPT> </center> </body> </html> でテキストボックスの中身を表示させたいのですが、 上手くいきません。どうすればいいのでしょうか。 また、変数を使わずに直接テキストボックスの中身を 表示させる事はできるのでしょうか。 教えてください。

  • htmlのテキストボックスに書かれた文字によって

    htmlのテキストボックスに書かれた文字によって表示する文字を変えたいのですが、コードがいまいちどうやって書いていいかわからないのでコードを教えて下さい。よろしくお願いします。 一応できなかったコード↓ <Form name="js"> <input type="text" name="txtb"> </Form> <script> <br> if(document.js.txtb.value="a"){document.write("a")} </script>

  • Tabに関して

    以前以下のソースのようにテキストボックスを4つくらい並べて、最大入力文字数になったら、自動的に右のテキストボックスに入力できるようにすることはできるのでしょうか? と質問をし、返答を頂いたのですが、自動的に右のテキストボックスに入力できるようにはなったのですが、キーボードのTabを使ってしまうと、全てのテキストボックスが最大になっていて、はじめのボックスでタブを押すと、3つめのボックスに飛んでしまいます。何か回避する方法がありましたら教えてください。 <html> <head> <title></title> </head> <body> <form name="form1"> <input type="text" name="txt1" size="7" maxlength="3">. <input type="text" name="txt2" size="7" maxlength="3">. <input type="text" name="txt3" size="7" maxlength="3">. <input type="text" name="txt4" size="7" maxlength="3"> </form> </body> </html>

  • disabledの点で。

    このソースを開いて、更新ボタンをクリックすると、 2の方のテキストボックスが半透明になりますが、それは半透明にしないようにすることは可能なのでしょうか。 お願いします。 <html> <head> <title></title> <script language="JavaScript"> <!-- function setTF(){ if(document.form1.text1.value=="") document.form1.text2.disabled = true; else document.form1.text2.disabled = false; } //--> </script> </head> <body> <form name="form1"> 1<INPUT type="text" name="text1" onChange="setTF()"> 2<INPUT type="text" name="text2" disabled> <INPUT type="submit" value="登録" onClick="return setTF()" name="submit"> </form> </body> </html>

  • 入力に関して。

    以下のソースのようにテキストボックスを4つくらい並べて、最大入力文字数になったら、自動的に右のテキストボックスに入力できるようにすることはできるのでしょうか? <html> <head> <title></title> </head> <body> <form name="form1"> <input type="text" name="txt1" size="7" maxlength="3">. <input type="text" name="txt2" size="7" maxlength="3">. <input type="text" name="txt3" size="7" maxlength="3">. <input type="text" name="txt4" size="7" maxlength="3"> </form> </body> </html>

専門家に質問してみよう