Почему это работает в Chrome, а не в Firefox? - PullRequest
0 голосов
/ 24 февраля 2012
function fill (colname) {
    var numRows, i, toCopy, iterated_name;

    numRows = document.getElementById('malesTable').rows.length + document.getElementById('femalesTable').rows.length - 2;
    //gets number of rows, subtracts two for header rows(male and female)
    toCopy = document.getElementById(colname.id).value;
    i = 1;
    //iterate over id's and input values
    for (i; i <= numRows; i++){
    iterated_name = colname.id + "_" + i;
    document.getElementById(iterated_name).value = toCopy;
    }
}

Он будет работать в Chrome для автозаполнения многих полей, однако в Firefox - нет. Почему?

Чтобы уточнить, когда входные данные помещаются в поле автозаполнения, поля не копируются должным образом.

Вот jsfiddle

http://jsfiddle.net/hopup/tfEQM

1 Ответ

1 голос
/ 25 февраля 2012

Когда вы делаете это:

fill(external_id);

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

Предположительно, вы имели в виду fill(document.getElementById("external_id"))?

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