2016-11-17 7 views
1

Я натолкнулся на то, что я считал довольно простой функцией JavaScript. Функция принимает 2 параметра. Первый - это список (oField), а второй - таблица (nTable).Добавление нового экземпляра строки, неспособного обновить значения ячеек ячейки

Этот список заполняется пользователем, и каждый раз, когда значения этого списка изменяются, я хочу, чтобы вызываемая функция вызывалась, чтобы воссоздать nTable, исходный заголовок и строки для каждого значения в списке.

function table_build(oField, nTable){ 
    //clear table when selection changes 
    nTable._HeaderRow.setInstances(1); 
    //add new selection to table 
    for(i=0;i<oField.length;i++){ 
     nTable._HeaderRow.addInstance(true); 
     nTable.HeaderRow[i+1].Cell1.rawValue = oField.getDisplayItem(i);  
    } 
} 

Вопрос, который я имею следующую строку:

nTable.HeaderRow[i+1].Cell1.rawValue = oField.getDisplayItem(i); 

Я могу изменить значение строки заголовка, используя:

nTable.HeaderRow.Cell1.rawValue = oField.getDisplayItem(i); 

Что странно, потому что я ожидал, что после добавления нового экземпляра потребуется HeaderRow[0].

Что здесь не так?

ответ

0

Я разработал решение. Функция addInstance() возвращает новый экземпляр строки. Поэтому я обновил функцию table_build(), чтобы присвоить это значение переменной (nRow), а затем используйте nRow для ссылки на строку.

var nRow = nTable._HeaderRow.addInstance(true); 
nRow.Cell1.rawValue = oField.getDisplayItem(i); 

Надеется, что это помогает кому-либо еще с подобным запросом :)