2009-12-11 2 views
0

У меня есть таблица, в которой я добавляю несколько строк динамически, а в новых строках добавляю один элемент входного текста. Когда текст во входном элементе изменяется, я хочу получить доступ к родительской строке и сделать что-то вокруг нее. Но мой код не может получить доступ к родительскому узлу для элемента ввода. Ниже приведен пример кода. Что является причиной этого? Есть ли какая-то работа?Почему родительский узел для элемента ввода не определен?

Создание строки выглядит примерно так:

var newRow = document.createElement('tr'); 
dojo.place(newRow, row, "after"); 
var td = document.createElement('td'); 
dojo.place(td, newRow, 'last'); 
dojo.attr(td, 'colspan', 2); 
dojo.place(document.createTextNode('Track id:'), td, 'last'); 
var input = document.createElement('input'); 
dojo.place(input, td, 'last'); 
dojo.attr(input, 'type', 'text'); 
dojo.attr(input, 'value', 0); 
dojo.attr(input, 'onchange', "JavaScript: onTrackIdChange(event);"); 

Начальная часть onTrackIdChange выглядит как:

function onTrackIdChange(event) 
{ 
var textbox = event.target; 
console.log(textbox); 
// lets find the parent row 
var row = findParentRow(btn); 

Реализация findParentRow выглядит следующим образом:

function findParentRow(node) 
{ 
    var parent = node; 
    do 
    { 
     console.log(parent); 
     parent = parent.parentNode; 
    } 
    while (parent.nodeName != 'TR'); 
    return parent; 
} 

Функция findParentRow терпит неудачу, так как она говорит, что родительский элемент для ввода nt не определено.

ответ

3

По вашему запросу findParentRow(btn), вы не должны проезжать textbox вместо btn?

Нет ссылки на эту переменную btn в другом месте кода, который вы отправили, поэтому, если это в порядке, вы должны отправить еще несколько кода, относящихся к этому.

+0

О, это была такая глупая ошибка. Результат операции копирования пасты :(Thanx много. –

0

Родитель не определен, поскольку узел не определен. узел не определен в findParentRow, потому что btn не определен в onTrackIdChange.

Смежные вопросы