私は自分で物事を理解したり、他の人が投稿したり、すでに質問して解決したことから学びたいので、助けを求めるのは嫌いです. これが私の最初の投稿です!
これは、非常に単純で、物事を複雑にしすぎているか、間違った方法で行っているかのいずれかです。2時間以上ずっとあちこち探してます。私は正確にはjsの初心者ではありませんが、私はまだ一種の初心者です。誰でも....
私がやろうとしていること:
だから私は<input type="number" maxlength="4" .../>
、ユーザーが100から8000までの4桁の数字(4桁である必要があります)を入力する数字入力ボックスを持っています。したがって、明らかに100から999は0100から0999になります。
これまでのところ問題ありません。文字列を使用して、変数を4桁として渡すことができます。
私が抱えている問題は、入力を検証するために特定の条件を追加する必要があることです。1つの条件が私を悩ませています。これは私がこれまでに持っているものです:
(var x は既にフォームと数値入力ボックスに設定されています)
if (x=="" || isNaN(x) || x.length!== 4 && x< 0100 || x>8000)
{alert(please enter the correct amount!}
else {run rest of function}
したがって、それらはすべて次の場合に有効です。x<0100
ユーザーが 99 を入力すると、4 桁ではないためフラグが立てられ、0099 を入力すると、それを受け入れて残りの機能コードを実行します。
0001 から 0099 までの任意の金額を警告するだけです。
私は別の投稿を見つけました, javascriptで8桁の数字を作るには? 、一種の関連性がありますが、男はゼロで埋められた数値を出力したいだけです。私は解決策の1つ(以下のコード)が私に役立つかもしれないと思いますが、私はかなり疲れていて、脳が混乱していて、新しいので解決できません:
var i = (100).toPrecision(8).split('.').reverse().join('');
私はそれを次のように編集することから始めます:
var i = (x).toPrecision(4).split('.').reverse().join('');
(しかし、これは 0099 ではなく 99 を入力した場合にのみ機能します...私の意味がわかれば)
コードの逆(0099から99.00に分割)のようになると思いますが、ステートメントは次のようになります:if(.... && i<==99 || ....)
しかし、JSでそれを書く方法はわかりません...
よし、セミ/クオータリーの初心者である私が、これがどのように私の心を混乱させているか見てみよう!!
申し訳ありませんが、正しくフォーマットされておらず、長い間、コード関数の使用方法を把握していません...
そして、これを読んでくれてありがとう(ここまで来たら)。
前もって感謝します
スラッピーX