長さを数え、それが適切な量であることを確認する入力フィールドの小さなチェックを書きました。9 桁または 1 文字と 5 桁のいずれかを許可する必要があるため、複雑になります。私が今持っている方法は機能しますが、コードは私の脳を傷つけます.おそらく三項および/またはスイッチを使用して、これに対してよりエレガントなソリューションがどのように見えるかを知りたいですか?
だから、私が今持っているそれほどきれいではない部分のほんの一部:
if (len !== 9) {
if (len == 1) {
y.hide();
n.show();
valInput.text("You need 8 more numbers");
} else {
if (len == 2) {
y.hide();
n.show();
valInput.text("You need 7 more numbers");
} else {
if (len == 3) {
y.hide();
n.show();
valInput.text("You need 6 more numbers");
} else {
if (len == 4) {
y.hide();
n.show();
valInput.text("You need 5 more numbers");
} else {
if (len == 5) {
y.hide();
n.show();
valInput.text("You need 4 more numbers");
} else {
if (len == 6) {
y.hide();
n.show();
valInput.text("You need 3 more numbers");
} else {
if (len == 7) {
y.hide();
n.show();
valInput.text("You need 2 more numbers");
} else {
if (len == 8) {
y.hide();
n.show();
valInput.text("You need 1 more number");
} else {
if (len > 9) {
y.hide();
n.show();
valInput.text("Order number must be 9 digits");
// gt 9
}
// 8
}
// 7
}
// 6
}
// 5
}
// 4
}
// 3
}
// 2
}
// 1
}
// this is not equal to 9
}
アップデート
すべての答えをありがとう!良いものがたくさんあります。しばらくプレイした後、お気に入りを受け入れます。適切な要件が満たされたときに何が起こるかを明確にするために、送信ボタンはフェードインしますが、検証されるまではフェードインしません。関連するかどうかはわかりませんが、関数が「ライブタイプ」としても実行されるため、カウントを含むメッセージが各後に返されることに言及します.keyup()