Struts e Javascript

Tenho um formulário com dois selects, sendo que o segundo select está desativado e só é ativado quando uma determinada opção do primeiro é selecionada.

O problema é que usando as tags html: do Struts eu não consigo definir o nome do select que o Javascript usa para habilitar/desabilitar o segundo select.

Meu java script:

function enableOp() { box = document.forms[0].plano; if (box.selectedIndex == 2) { document.forms[0].op.disabled=false; } else { document.forms[0].op.disabled=true; } }

Só que pra esse código funcionar preciso gerar o seguinte código html, com as taglibs do Struts:

<select name="plano"> ... </select>

e como está este select na tua página?!

Valeu, fui ver select gerado e o struts já atribui um nome ao select, é só usar esse nome no meu javascript… duh… valeu… foi mal

sorry

O struts gera o componente com o nome(name) igual ao da sua propriedade, mas isso pode ser ruim quando vc utilizar o fireShit, digo, firefox.

É que qdo vc utiliza getElementById(acho que vc deve estar usuando isso, não é?) o IE procura um elemento com id ou name que vc passar.

O fireshit só utiliza o id, então se nao houver um componente com o id informado seu script vai dar erro.

Para evitar esse problema, coloque o atributo styleId na hora de criar seu campo. E coloque o valor do styleId igual ao da propriedade, daí vai ser criado um componente com id=“x” e name=“x”…

Abraço.