私のhtmlページには、互いに関連している3つのフォーム入力があります。オプション付きのコンボボックスとしての最初の入力:
- TCA
- 2 番目と 3 番目の入力をテキスト タイプとして入力します。
最初の入力が「TCA」で、ユーザーが 2 番目の入力で「01」を入力した場合、3 番目の入力で自動的に「1-120」が入力されます。最初の入力が「intasept」の場合、ユーザーが 2 番目の入力で「01」を入力すると、3 番目の入力で自動的に「1-32」が入力されます。
簡単なロジックで。
- 最初の入力 = "TCA" (ユーザーが選択したオプション)。
- 2 番目の入力 = "01" (ユーザーによる手動入力)。
- 3回目の入力=「1~120」(自動入力)。
これは間隔 120 で続行されます。例:
- 2 番目の入力: 02: 03 など。
- 3 番目の入力: 121-240: 241-360 など。
最初の入力の場合 = Intasept (ユーザーが選択したオプション)。
- 2 番目の入力 = 01 (ユーザーによる手動入力)。
- 3 番目の入力 = 1 ~ 32 (自動入力)。
- これはインターバル 32 まで続きます。
元:
- 2 番目の入力: 02: 03 など。
- 3 番目の入力: 32-64: 65-96 など。
この関数を JavaScript で作成する方法を教えてください。これ、私が試したことですが、これは実行されません
var interval, step;
$("#first").change(function (e) {
if (this.option:selected) interval = { // map of input value attributes to interval values
"TCA": 120,
"intasept": 32
}[this.value];
update();
});
$("#secondInput").on("change keyup input paste", function (e) {
step = parseInt(this.value, 10);
update();
});
function update() {
if (isNaN(interval) || isNaN(step)) return;
$("#thirdInput").val(((interval * step + 1)-interval) + "-" + ((interval * step + interval)-interval));
}