LINUX.ORG.RU

траблы с JScript + DOM


0

0

Всем здравствуйте!

Столкнулся со следующей проблемой. Написал JavaScript, что бы он автоматически добавлял строки в таблицу: текст и поле для ввода. На поле для ввода повесил событие onkeyup и приклеял функцию. Но в интернетэксплорере нихрена не пашет, в опере, мозиле, фаерфоксе все ок.

Как быть?

Вот кусок кода:

INPUTtag = document.createElement("input");	
INPUTtag.setAttribute("type", "text");
INPUTtag.setAttribute("size", 3);
INPUTtag.setAttribute("id", "order_item"+id);
INPUTtag.setAttribute("value", "0");
INPUTtag.setAttribute("onkeyup", "updateTrash()");
                                  ^^^
                                  в ie не пашет!

Спасибо.

Ответ на: комментарий от friday

Да, innerHTML работает. Спасибо.

Еще нашел вот какой способ заставить работать ту хрень:

INPUTtag.setAttribute('onkeyup', function added() { updateTrash(); });

Luceus
() автор топика
Ответ на: комментарий от Luceus

>юзай innerHTML и не трахай мозг ослику: для него это слишком сложно

innerHTML не соотвествует стандарту w3c. Если можно, обходись без этого свойства. Даже IE не всегда его корректно обрабатывает.

Сделай так:

INPUTtag.onkeyup = updateTrash;

Это соотвецтвует стандарту и работеат везде.

zhuk
()
Ответ на: комментарий от zhuk

Ну а если необходимо передать какие-либо параметры 
в обработчик события, то делай так:

INPUTtag.onkeyup = function() {
    updateTrash(param1, param2);
}

Но обрати внимание на то, что в этом случае используется 
так называемое "замыкание" (фича JavaScript-a), если интерестно
почитай на http://dklab.ru/. Часто используется при написании
асинхронного кода (AJAX http://ajaxpatterns.org/).

P.S. JScript и JavaScript - это два разных языка!

zhuk
()

Спасибо за ответы! =)

Все работает.

Luceus
() автор топика
Ответ на: комментарий от zhuk

>Еще нашел вот какой способ заставить работать ту хрень: >INPUTtag.setAttribute('onkeyup', function added() { updateTrash(); });

Это тоже не соотвецтвует стандарту. По спецификации эта функция получает два параметра типа DOMString:

name of type DOMString

value of type DOMString

http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/core.html#ID-F68F082

zhuk
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.