Здравствуйте!
Помогите реализовать. Есть скрипт на странице:
Код:
|
<script type="text/javascript">
var idx = 1;
function createControlString() {
var newDiv = document.createElement("div");
var newControl = document.createElement("select");
newControl.setAttribute("id", idx + "_machine");
newControl.style.width = "65px";
newControl.style.marginRight = "5px";
newControl.options.lenght = 7;
newControl.options[0] = new Option("Pr110", "110");
newControl.options[1] = new Option("Pr120", "120");
newControl.options[2] = new Option("Lm210", "210");
newControl.options[3] = new Option("Sl310", "310");
newControl.options[4] = new Option("Sl320", "320");
newControl.options[5] = new Option("Sl330", "330");
newControl.options[6] = new Option("Sl340", "340");
newDiv.appendChild(newControl);
document.getElementById('divWorkArea').appendChild(newDiv);
document.getElementById(idx + '_machine').onchange = operation;
idx += 1;
}
function operation(element) {
alert(element.id);
}
</script> |
Суть скрипта: на форму, по нажатию кнопки, добавляются комбобоксы. К комбобоксу привязано событие onchange, по срабатыванию которого должен отрабатываться скрипт по заполнению другого комбобокса. Проблема в следующем. В функцию с алертом (тестовая) мне нужно передать или контрол, который сгенерировал событие, или (что предпочтительнее) selectedIndex. Но не получается передать параметр. Т.е. если сделать просто функцию с алертом, то все отлично, все отрабатывается. Но как только пытаюсь сделать что-нить вроде document.getElementById(idx + '_machine').onchange = operation(this.selectedIndex); то вся работа скрипта прекращается.
Подскажите, что я делаю не так.