входы массива не работают

0

Может ли кто-нибудь сказать мне, почему в функции предупреждения secondStage (frm) не печатается значение предупреждения (frm.nColInRow1 [0].value); Печатается строка "Прибытие сюда"

Вот код

function firststage(frm) {

    alert(frm.nrows.value);

    for (i = 0; i < frm.nrows.value; i++) {
        var row = '<p id="rowNum' + i + '"> Enter number of columns in row ' + i + ':  <input type="text" name="nColInRow1[]" size="4"/></p>';
        jQuery('#itemRows').append(row);
    }

    if (i == (frm.nrows.value - 1)) {
        // Append a done button to move to next level   
        var button = '<input onclick="secondStage(this.form);" type="button" value="Add col">';
        jQuery('#itemRows').append(button);
    }

}

function secondStage(frm) {
    alert("coming here");
    alert(frm.nColInRow1[0].value);
}
  • 0
    почему нет $('<input type="button">').val("Add col").click(secondStage).appendTo($('#itemRows')); ?
Теги:

1 ответ

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

Поскольку имя входных элементов - nColInRow1[] не nColInRow1, используйте нотацию в виде скобок, так как у вас есть специальные символы в ключе

function secondStage(frm) {
    alert(frm['nColInRow1[]'][0].value);
}

Демо: скрипка

  • 0
    Вау решено !! Как закрыть этот вопрос?
  • 0
    @ user3073802 пометьте ответ как принятый, нажав на отметку в левом верхнем углу

Ещё вопросы

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