Переключатель отображения строки таблицы не работает в Firefox - PullRequest
0 голосов
/ 17 сентября 2010

У меня есть функция Javascript, которая работает в IE7, но создает проблемы в Firefox.

JAVASCRIPT

function vehicleSelected() {
   var ddlSelect = document.getElementById('ddlSelect');
   var displayTable = document.getElementsByName('listTable')[0];
   var strAuto = ddlSelect.options[ddlSelect.selectedIndex].value;
   alert("ok, so far");
   var rows = displayTable.getElementsByTagName("tr");
   alert("this alert is not triggered");
   var rowData = document.getElementById(strData);
   for (var i = 0; i < rows.length; i++) {
      rows[i].style.display = 'none';
   }
   rowData.style.display = '';
}

Я не уверен, как обрабатывается остальная часть кода. Есть ли универсальный способ переключать отображение для строки таблицы или мне нужен один для Firefox отдельно?

EDIT

<table id="listTable">

1 Ответ

1 голос
/ 17 сентября 2010

ваше сообщение не содержит много деталей, но я предполагаю, что ваш html выглядит примерно так

<table id='listTable' name='listTable'>

name явно не является допустимым атрибутом для table (без упоминания здесь и Visual Studio Intellisense согласен), поэтому Firefox игнорирует этот атрибут и не находит никаких элементов с именем listTable.displayTable не определен в исполнении Firefox.

Internet Explorer, однако, с бесконечной настойчивостью настаивает на том, чтобы что-то делать неправильно, видит, что атрибут id имеет значение 'listTable', и считает, что он достаточно хорош для квалификациидля getElementsByName.IE на самом деле не учитывает атрибут name, который вы дали вашей таблице - это просто повезло.удаление атрибута id также приведет к сбою метода в IE.

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