ユーザーが選択できる(正常に動作する)か、場合によってはjsを介して選択する必要がある3つの連続または下位のドロップダウンメニューがあります。
オプションをシーケンスで選択できるようになる前に、js が最初のドロップダウンにデータを入力する時間を与えるために、タイムアウトを設定しました。それ以外の場合は機能しません。
問題は、setTimeout の経過時間中に何らかの形で var "i" が追加され、スクリプトがスローされることです。
考慮すべき入力が 1 つしかない場合に "i" を強制的に 0 にすると、問題なく動作します。これは動的であり、私にはできないため、この動作を停止する方法を探しています。
以下のコードは、2 番目のドロップダウンで停止します。
この場合、setTimeout は適切な解決策ですか? ありがとう。
$( document ).ready(function() {
var ctvid = <?php echo $ctvid ;?>;
if(ctvid !=""){
var info = <?php echo json_encode ($info);?>;
for (var i=0;i<ctvid;i++){
$('#brand' + i).val(info['brand_id'][i]).change();
setTimeout(function(){
$('#model' + i).val(info['model_id'][i]).change();
},500);
}
}
});