Есть неплохой яваскрипт фреймворк Prototype. Долго пытался понять, почему не работает обработчик события onChange и ряда других. Чтение док и обсуждений дало весьма не утешительный ответ - на данном этапе версия 1.6.0.3 не поддерживает ни onChange, ни ряд других событий. Это вызвано разбежностями в реализациях данного события в разных броузерах и когда будет исправленно не понятно.
Собственно говоря, есть ряд решений
Я просто вставлял обработчик в элемент при его создании
var select = new Element('select',{onChange:'onchangeHandler('+i+','+j+')'});
function onchangeHandler (i,j) {
//
}
Что полностю подошло под мою задачу. Но не всегда это решение подходит, поэтому рекоммендую обратить внимание на эти статьи:
Тут в том числе и своя функция по отлову событий
http://jehiah.cz/archive/firing-javascript-events-properly
А тут пример, с которого я взял свое решение
http://stackoverflow.com/questions/278927?sort=newest
Понятно, что мне это надо было для калькулятора расчета стоимости сайта, но не того, на который ведет ссылка, а другого :) И не сайта, а расчета стоимости банкета.
UPDATE
А еще можно сделать вот так
$(select).onchange = function () {onchangeHandler(i,j);};
но из prototype тут только сокращенная запись