0

编辑 - 谢谢大家 - 我知道这很简单......看不到树上的木头!

var abc = new Array('Perth','Auckland');

case '1':
    document.getElementById(q15).options.length = 0;
    for (i = 0; i < abc.length; i++) {
        createOption(document.getElementById(q15), abc[i], abc.[i]);
        }
break;

我相信这很容易,但我有一个心理障碍。

当上面的 Javascript 输出包含数组值的下拉列表时,它会生成以下内容:

<option value="Perth">Perth</option>
<option value="Auckland">Auckland</option>

但是,我真的需要以下内容:

<option value="1">Perth</option>
<option value="2">Auckland</option>

所有选项的value=数字都会增加。

有任何想法吗?

谢谢,

H。

4

3 回答 3

1

看起来这个调用设置了值:

createOption(document.getElementById(q15), abc[i], abc.[i]);

所以尝试将第一个或第二个 abc[i] 更改为仅 i。

于 2012-08-19T14:24:09.543 回答
0

使用 i 代替abc[i]ORabc.[i]

于 2012-08-19T14:26:16.070 回答
0

假设createOption函数的第二个参数是value属性的值:

createOption(document.getElementById(q15), i + 1, abc[i]);
于 2012-08-19T14:24:58.500 回答