Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> скрипт не работает в хроме (IE и Opera) работает 
:(
    Опции темы
slang
Дата 21.2.2009, 11:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 455
Регистрация: 7.3.2004

Репутация: -1
Всего: 0



Код

        function copy_kol()
        {
            var el = document.getElementsByTagName('input');
            var elen = el.length;
            var tid;
            for(var i = 0; i < elen; i++) {
                
                if(!el[i].name) continue;
                tid = el[i].name;
                if(tid.slice(0,6) != 'Kolvo_') continue;
                kol = el[i].value * 1
                sp = document.getElementsByTagName('input');
                sp('KolvoFact_'+tid.slice(6)).value=kol;
            }
            ras_it();
        }

в IE и Opera скрипт работает корректно, а в Chrome не пашет :(
В Хроме -> Разработчикам -> Консоль JavaScript пишет ошибку:
Uncaught TypeError: object is not a function native runtime.js (line 177)
В Хроме -> Разработчикам -> Отладка JavaScript:
uncaught exception TypeError: object is not a function

ХЗ, чего ему надо :(


--------------------
Запчасти на иномарки www.avtograd55.ru.
Если есть время - зайдите и посоветуйте что исправить и что доработать.
PM MAIL WWW ICQ   Вверх
bars80080
Дата 21.2.2009, 11:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

Репутация: 44
Всего: 315



указал бы строчку что ли...

меня лично вот это настораживает:

                sp = document.getElementsByTagName('input');
                sp('KolvoFact_'+tid.slice(6)).value=kol;

откуда у идентификатора массива элементов вдруг появляются круглые скобки. я так понимаю - должны быть квадратные для выбора элемента. т.е. sp['KolvoFact_'+tid.slice(6)] и то, я не думал что он даёт ассоциативный массив, вроде должно быть порядковое значение
PM MAIL WWW   Вверх
slang
Дата 21.2.2009, 15:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 455
Регистрация: 7.3.2004

Репутация: -1
Всего: 0



bars80080
если написать так:
Код

        function copy_kol()
        {
            var el = document.getElementsByTagName('input');
            var elen = el.length;
            var tid;
            for(var i = 0; i < elen; i++) {
                
                if(!el[i].name) continue;
                tid = el[i].name;
                if(tid.slice(0,6) != 'Kolvo_') continue;
                kol = el[i].value * 1
                sp = document.getElementsByTagName('input');
alert (sp['KolvoFact_'+tid.slice(6)]);
                sp('KolvoFact_'+tid.slice(6)).value=kol;
            }
            ras_it();
        }


то в chrome получаю результат: udefined, а в Opera получаю: [object HTMLInputElement]


--------------------
Запчасти на иномарки www.avtograd55.ru.
Если есть время - зайдите и посоветуйте что исправить и что доработать.
PM MAIL WWW ICQ   Вверх
bars80080
Дата 22.2.2009, 02:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

Репутация: 44
Всего: 315



почему в хроме неизвестность не знаю, но в опере всё правильно - указатель на объект, у которого могут быть такие свойства как .value


кстати, очень не верно брать указатель каждый раз при прокрутке цикла. это ведь всегда одинаковая процедура, почему бы её не выполнить заранее вне цикла. оно должно быть вносит значительную нагрузку
PM MAIL WWW   Вверх
slang
Дата 22.2.2009, 08:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 455
Регистрация: 7.3.2004

Репутация: -1
Всего: 0



Цитата(bars80080 @  22.2.2009,  02:28 Найти цитируемый пост)
кстати, очень не верно брать указатель каждый раз при прокрутке цикла

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


Цитата(bars80080 @  22.2.2009,  02:28 Найти цитируемый пост)
почему в хроме неизвестность не знаю, но в опере всё правильно

ну значит так и оставляю ... мозгов написать иначе все равно не хватит smile


--------------------
Запчасти на иномарки www.avtograd55.ru.
Если есть время - зайдите и посоветуйте что исправить и что доработать.
PM MAIL WWW ICQ   Вверх
bars80080
Дата 22.2.2009, 21:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

Репутация: 44
Всего: 315



ну, ещё какое-то соображение. может в хроме нельзя запихивать выражения в [ ... ]. попробуйте запихать 'KolvoFact_'+tid.slice(6) в переменную. во-вторых посмотрите, есть ли в tid что-нибудь перед вставкой.


п.с. из-за малого использования, под хром не правлю
PM MAIL WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.1115 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.