Как использовать динамическую переменную без пропусков] после списка элементов? - PullRequest
0 голосов
/ 19 июля 2011

У меня есть динамическая переменная, как это:

var oneButton= null;
var oneMoreButton= null;
var differentNameButton= null;
var anotherButtonDifferent= null;

Тогда у меня есть это:

switch(valor){
    case 0:data = "oneButton"; break;
    case 1:data = "oneMoreButton";break;
    case 2:data = "differentNameButton";break;
    case 3:data = "anotherButtonDifferent";break;
}

Затем, наконец, у меня есть это:

switch(anotherValor){           
case 1:eval(data + ' = ' + document.getElementById('oneNameDiv').parentNode);break;
case 2:eval(data + ' = ' + document.getElementById('anotherDivName').parentNode);break;
case 3:eval(data + ' = ' + document.getElementById('oneMoreDivWithDifferentName').parentNode);break;
case 4:eval(data + ' = ' + document.getElementById('hereIsAnotherDivName').parentNode);break;
}

Послея пытаюсь выполнить его, я получаю сообщение об ошибке в консоли Firefox:

missing ] after element list
http://localhost:8090/myapplication/functions.js 
test1 = [objectHTMLDivElement]

Кто-то знает, что происходит?

Ответы [ 2 ]

1 голос
/ 19 июля 2011

Я не знаю, чего именно вы пытаетесь достичь, но ваш код мог бы быть лучше. Примерно так, например:

var data = document.getElementById('div'+valor).parentNode;

Предполагается, что есть переменная valor с номером вашего div.

Не могли бы вы объяснить, что вы делаете?

0 голосов
/ 19 июля 2011

Вы можете объявить массив следующим образом:

var test = [];

Тогда вы можете использовать «доблесть» напрямую:

test[valor]
...