Таинственный (для меня) объект не поддерживает ошибку свойства или метода - JavaScript HTML rollout - PullRequest
0 голосов
/ 02 мая 2011

Я получаю ошибку выше от Char 1 4-й строки ... Понятия не имею, что это бросает? Я уверен, что это нечто простое, чего я не вижу ...

out = out + "<b>Select Box Information</b><br><br> The name of the select box is: skeletor. A play on the word selector.<br>"
out = out + "The options for the select box are, Default Value, Option 2, Option 3, Option 4 and Option 5.<br>"
out = out + "The values for each option, from top to bottom, are: " + lucy.skeletor.option(0) + ", "
out = out + lucy.skeletor.option(1) + ", " + lucy.skeletor.option(2) + ", " + lucy.skeletor.option(3)
out = out + ", " + lucy.skeletor.option(4) + ".<br><br>"
out = out + "The index of the first option in the select box is: 0. The location of the user-selected option is: " + lucy.skeletor.value + ".<br><br>"

Ответы [ 2 ]

1 голос
/ 02 мая 2011

out = out + ... все в порядке, просто не обязательно. Ваша проблема - использование .option (1), который обращается к несуществующей коллекции

Если есть скелетор, то правильный синтаксис для новых браузеров:

lucy.options [1] .value или .text

Вот то, что я думаю, вы имели в виду

var out = "";
out += "<b>Select Box Information</b><br><br> The name of the select box is: skeletor. A play on the word selector.<br>"
out += "The options for the select box are, Default Value, Option 2, Option 3, Option 4 and Option 5.<br>"
out += "The values for each option, from top to bottom, are: "
var opts=[]; 
for (var i=0;i<lucy.skeletor.options.length;i++) opts.push(lucy.skeletor.options[0].text); 
out += opts.join(", ");
out += ".<br><br>"
out += "The index of the first option in the select box is: 0. The location of the user-selected option is: " + lucy.skeletor.value + ".<br><br>"
1 голос
/ 02 мая 2011

Я думаю, что lucy.skeletor.option(1) будет проблемой здесь.Если lucy.skeletor является подлинным элементом select, он содержит массив options.На этот массив можно ссылаться как: lucy.skeletor.options[n]

Более того, если вы объединяете, вы можете сделать:

out += somestring+someotherstring+morestrings ... etc
...