0

我有以下代码:

if((dropdown1save=="1")&&(dropdown2save=="1")&&(dropdown3save=="1")){
    $('#feedbackbox').html(information[1]);
}

if((dropdown1save=="1")&&(dropdown2save=="1")&&(dropdown3save=="2")){
    $('#feedbackbox').html(information[2]);
  }

dropdown1save 从 1 变为 3 dropdown2save 从 1 变为 10 dropdown3save 从 1 变为 20

我需要一个循环,其中 dropdown3save 从 1 - 20 循环,然后 dropdown2save 上升 1 和 dropdown3 再次循环

然后当 dropdown2save 达到 10 dropdown1save 上升一个,每个循环再次开始

例如 111 112(依此类推,直到) 121 122(依此类推,直到 211 212(依此类推)

每次我需要 dropdown3save 循环时(信息 [x]] 也上升 1 (因此这将上升到 600,因为有 600 种组合!)

抱歉,要弄清楚很多,但我不知道该怎么做!

4

3 回答 3

2

试试这样:

$('#feedbackbox').html(
    information[
        ((parseInt(dropdown1save) - 1)  * (10 * 20) ) + 
        ((parseInt(dropdown2save) - 1)  * 20) +
        parseInt(dropdown3save)
    ]
);
于 2013-11-01T12:24:07.257 回答
1

你所描述的是一个循环。下面的一组for语句将循环从 1 到 20 的值,然后将 j 的值增加 1 并再次从 1 循环到 20。然后当 j 的值达到 10 时,它将 i 加 1 并重复。

for (var i = 1; i < 3; i++) {
    for (var j = 1; j < 10; j++) {
        for (var k = 1; k < 20; k++) {
            count = i * j * k;
            if (dropdown1save == i.toString() && dropdown2save == j.toString() && dropdown3save == k.toString())
            {
                $("#feedbackbox").html(information[count]);
            }
        }
    }
}

这应该够了吧。

于 2013-11-01T12:19:22.350 回答
0
for(var i=1; i<= 3; i++) {
    for(var j=1; j<= 10; j++) {
            for(var k=1;k<=20;k++) {
                    if((dropdown1save==i.toString() )&& (dropdown2save==j.toString()) && (dropdown3save==k.toString())){
                            $('#feedbackbox').html(information[200*(i-1) + 20*(j-1) + k]);
                    }
            }
    }
}
于 2013-11-01T12:25:51.847 回答