0

嗨,由于某种原因,我无法使用此功能。

function go(type)
{
    location=document.category.example.options[document.category.example.selectedIndex].value
}

我想做的就是嵌入类型变量,每当我尝试做类似的事情时,go函数就会变得未定义

location=document.'+type+'.example.options[document.'+type+'.example.selectedIndex].value

我究竟做错了什么?

4

3 回答 3

1

您可以使用document[type].example

于 2013-11-09T09:20:50.763 回答
1

而不是document.'+type+'.example.options[document.'+type+'.example.selectedIndex].value你应该写:

document[type].example.options[document[type].example.selectedIndex].value
于 2013-11-09T09:21:26.010 回答
1

在你做这样的事情之前,你需要了解更多关于 JavaScript 语法的知识。

这是您的问题的解决方案:

function go(type)
{
    location=document[type].example.options[document[type].example.selectedIndex].value;
}

go('category');

它利用了这两个等价的事实:

a.b === a['b']

但显然在第二部分中, b 可以动态替换,因为它是一个字符串。

于 2013-11-09T09:21:39.917 回答