InvalidArgument с HTML-таблицей метод insertBefore - PullRequest
0 голосов
/ 26 августа 2010

Я думаю, я знаю, что это ошибка IE ... Мне нужно добавить новую строку в таблицу HTML в точном положении.(не хочу insertRow (index), потому что это выглядит лучше по другим причинам)

function AddNewItem(td) {   ///td comes from button at the HTML code, <input ... onclick="AddNewItem(this.parentNode)"
  var grid = GetGrid();
  var itemIndex = $(td.parentNode).attr('index');
  ///alert(itemIndex + "'e eklenecek");
  var newRow = document.createElement('tr');
      var td1 = document.createElement('td');$(td1).addClass('td');
      var td2 = document.createElement('td');$(td2).addClass('td text r');
      var td3 = document.createElement('td');$(td3).addClass('td text r');
      var td4 = document.createElement('td');$(td4).addClass('td text r');
  $(newRow).append(td1);$(newRow).append(td2);$(newRow).append(td3);$(newRow).append(td4);

  grid.insertBefore(newRow, td.parentNode); ///THIS GIVES AN INVALIDARGUMENT error .. Any solutions will be appreciated :)
}


function GetGrid() {
 var grid = document.getElementById("MasterTableView");
 return grid;
}

Ответы [ 2 ]

0 голосов
/ 26 августа 2010

Я думаю, вы передаете неверный аргумент AddNewItem, что (по крайней мере, в IE) это не элемент td, как вы думаете.

0 голосов
/ 26 августа 2010

My предположим, , что td.parentNode не является дочерним элементом grid. Посмотрите на спецификацию W3C для insertBefore , чтобы убедиться, что вы вызываете метод с допустимыми параметрами.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...