Имя переменной из json в сочетании с номером счета

0

У меня следующий цикл:

for( i = 1; i < parseInt(data.anzahl_parameter) + 1; i++ )
{
    newParameterInputFieldLabel = $( "<label>" )
    .text( data.p1_einheit )
        .attr( "for", "einheit1" )
        .appendTo( newInputAreaAmountDiv );


    newParameterInputField = $( "<input>" )
        .addClass("insertFloat")
        .attr("id", "einheit" + i)
        .appendTo( newParameterInputFieldLabel );
    }

Переменная data.p1_einheit исходит из json-массива. Это прекрасно работает, когда data.anzahl_parameter имеет только 1 элемент.

Но когда у меня есть два или более элемента, то я не мог использовать переменную динамически.

Я пробовал это:

data.p[i]_einheit

но мой скрипт останавливается.

Что я должен изменить, чтобы заставить его работать?

Теги:

1 ответ

1
Лучший ответ

Вы должны поместить все имя свойства (как строку) между квадратными скобками. Используйте их вместо точечной нотации, а не в середине.

data["p" + i + _einheit]

Вероятно, вам лучше будет реорганизовать JSON, поэтому у вас есть массив вместо свойств, следующих за числовым соглашением.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню