Hmm, entendi...
Agora eu estou fazendo umas validações legais, tipo, se não escolheu a instância, não pode escolher o banco, e pretendo exibir uma msg de qual dado está faltando (caso não se preencha todos).
Após isso, vou ter que passar tudo isso para um script CGI, aí que quero ver.
- Fórum WMO
- → Viewing Profile: Posts: Má =)
Community Stats
- Group Usuários
- Active Posts 10
- Profile Views 876
- Member Title Novato no fórum
- Age 34 years old
- Birthday January 25, 1991
-
Sexo
Female
0
Neutral
User Tools
Friends
Má =) hasn't added any friends yet.
Latest Visitors
Posts I've Made
In Topic: [resolvido]como Determinar Os Values
28/08/2009, 13:55
In Topic: [resolvido]como Determinar Os Values
28/08/2009, 09:18
FUNCIONOU!!!
MUITO OBRIGADA!
Só uma coisa, eu tentei usar o isso aqui, que você havia dito:
Estava colocando desta maneira:
O que haveria de errado aí?
Sou muito noob em JScript, a única coisa que a minha professora do técnico ensinou foi dar alert. ¬¬'

MUITO OBRIGADA!

Só uma coisa, eu tentei usar o isso aqui, que você havia dito:
var opcoes1 = '<option>[Escolha uma opção]</option><option value="1a">1a</option><option value="1b">1b</option>';// perceba que isso é 1 string com o conteúdo HTML do select ...elementoSelect.innerHtml = opcoes1;
Estava colocando desta maneira:
var opcoes = { "valor1" : '<option>1a</option><option>1b</option><option>1c</option>', "valor2" : '<option>2a</option><option>2b</option><option>2c</option>', "valor3" : '<option>3a</option><option>3b</option><option>3c</option>', "valor4" : '<option>4a</option><option>4b</option><option>4c</option>' } function bd_inst(opcao){ switch(opcao){ case "instance1": document.getElementById('bds_inst1').innerHtml = opcoes["valor1"]; break; case "instance2": document.getElementById('bds_inst1').innerHtml = opcoes["valor2"]; break; case "instance3": document.getElementById('bds_inst2').innerHtml = opcoes["valor3"]; break; case "instance4": document.getElementById('bds_inst2').innerHtml = opcoes["valor4"]; break; } }
O que haveria de errado aí?
Sou muito noob em JScript, a única coisa que a minha professora do técnico ensinou foi dar alert. ¬¬'
In Topic: [resolvido]como Determinar Os Values
27/08/2009, 16:49
Eu não sei como está o seu código agora, mas pelo que você escreveu antes, me parece que você misturou
Atualmente, está assim:
<!-- Começando do zero, AGAIN! --> <html> <head> <title>Comparação de bancos</title> <script> //var bds_inst1 = [['texto1A', 'valor1A'],['texto1B', 'valor1B'],['texto1C', 'valor1C']]; //var bds_inst2 = [['texto2A', 'valor2A'],['texto2B', 'valor2B'],['texto2C', 'valor2C']]; //var bds_inst3 = [['texto3A', 'valor3A'],['texto3B', 'valor3B'],['texto3C', 'valor3C']]; //var bds_inst4 = [['texto4A', 'valor4A'],['texto4B', 'valor4B'],['texto4C', 'valor4C']]; //var opcoes = { // "valor1" : '<option>1a</option><option>1b</option><option>1c</option>', // "valor2" : '<option>2a</option><option>2b</option><option>2c</option>', // "valor3" : '<option>3a</option><option>3b</option><option>3c</option>', // "valor4" : '<option>4a</option><option>4b</option><option>4c</option>' //} var bds_inst1 = [[''],['<option value="1a">1a</option>'],['<option value="1b">1b</option>'],['<option value="1c">1c</option>']]; var bds_inst2 = [[''],['<option value="2a">2a</option>'],['<option value="2b">2b</option>'],['<option value="2c">2c</option>']]; var bds_inst3 = [[''],['<option value="3a">3a</option>'],['<option value="3b">3b</option>'],['<option value="3c">3c</option>']]; var bds_inst4 = [[''],['<option value="4a">4a</option>'],['<option value="4b">4b</option>'],['<option value="4c">4c</option>']]; function teste(exibe){ alert(exibe); } function validaCombo(){ if ((document.getElementById('list_instance_1').value == '') || (document.getElementById('list_instance_2').value == '') || (document.getElementById('bd_inst1').value == '') || (document.getElementById('bd_inst2').value == '')){ alert("Selecione duas intâncias e dois bancos."); return false; } else frm_comp.submit(); } function bd_inst(opcao){ switch(opcao){ case "instance1": //document.getElementById('bds_inst1').innerHtml = opcoes["valor1"]; add_option('bd_inst1',bds_inst1); break; case "instance2": //document.getElementById('bds_inst1').innerHtml = opcoes["valor2"]; add_option('bd_inst1',bds_inst2); break; case "instance3": //document.getElementById('bds_inst2').innerHtml = opcoes["valor3"]; add_option('bd_inst2',bds_inst3); break; case "instance4": //document.getElementById('bds_inst2').innerHtml = opcoes["valor4"]; add_option('bd_inst2',bds_inst4); break; } } function add_option(combo_name, bds){ var combo = document.getElementById(combo_name); combo.innerHTML = ""; for(var i=0; i < bds.length; i++){ var opt = document.createElement('option'); opt.value = bds[i][0]; opt.innerHTML = bds[i][1]; combo.appendChild(opt); } } </script> </head> <body> <form name="frm_comp" action="ok.htm" method="post"> <table border="0" align="center"> <tr> <td width="200px" align="center"> <h4>INSTÂNCIA</h4> <select id="list_instance_1" name="" size=1 onChange="bd_inst(this.value);" > <option>[Selecione uma instância]</option> <option value="instance1">Instância 1</option> <option value="instance2">Instância 2</option> </select> </td> <td width="200px" align="center"> <h4>INSTÂNCIA</h4> <select id="list_instance_2" name="" size=1 onChange="bd_inst(this.value);"> <option>[Selecione uma instância]</option> <option value="instance3">Instância 3</option> <option value="instance4">Instância 4</option> </select> </td> </tr> <tr> <td width="200px" align="center"> <h4>BANCO</h4> <select id="bd_inst1" name="" size=1 onChange="teste(this.value);"> </select> </td> <td width="200px" align="center"> <h4>BANCO</h4> <select id="bd_inst2" name="" size=1 onChange="teste(this.value);"> </select> </td> </tr> </table> <p> <table align="center"> <tr> <td> <input type="button" value="Enviar" onclick="return validaCombo();"> </td> </tr> </table> </form> </body> </html>
In Topic: [resolvido]como Determinar Os Values
27/08/2009, 16:22
Verifique o que está vindo no .value com um alert().
Fiz o seguinte:
<select id="bd_inst1" name="" size=1 onChange="teste(this.value);"> </select>
function teste(exibe){ alert(exibe); }
Como resultado, está vindo <option value="X">X</option>
Mas eu queria que viesse apenas X.
Isso. Aonde você tem:
opt.value = arr_valores[i]; opt.innerHTML = arr_valores[i];você vai ter algo como:opt.value = arr_valores[i][0]; opt.innerHTML = arr_valores[i][1];
Tá faltando algo aqui né?
function add_option(combo_name, bds){ var combo = document.getElementById(combo_name); combo.innerHTML = ""; for(var i=0; i < bds.length; i++){ var opt = document.createElement('option'); opt.value = bds[i][0]; opt.innerHTML = bds[i][1]; combo.appendChild(opt); } }
Porque todas as opções do combo aparecem como "undefined", mas pelo menos, se eu num seleciono nada, ele não dá o submit, e fala que falta algo!
Acho que estamos quase lá...
As opções que aparecem são todos "undefined"
Ele não pega o nome que tem que exibir...
Como o primeiro seria nulo --> [Selecione um valor]
Se eu pego algum "undefined" que não o primeiro, ele encara como tenho dados (que realmente há) e a validação funciona como deveria, só falta subir com esse undefined e fazer voltar os dados.
In Topic: [resolvido]como Determinar Os Values
27/08/2009, 15:15
ok, vou tentar aplicar isto aqui.
estou tentando mudar a estratégia para fazer o que preciso.
Não entendi bem isso,
esse acesso seria feito na add_option ?
Atualmente, meu código está assim:
Porém, a função validaCombo não exibe a msg se os dois combos de BANCO estiverem em branco. :/
O que pode estar acontecendo?
estou tentando mudar a estratégia para fazer o que preciso.
for (var i = 0; i < combinacao1.length; i++) { // combinacao1[i][0] = texto // combinacao1[i][1] = valor }
[]'s
Não entendi bem isso,
esse acesso seria feito na add_option ?
Atualmente, meu código está assim:
<!-- Começando do zero, AGAIN! --> <html> <head> <title>Comparação de bancos</title> <script> var bds_inst1 = [['<option>[Escolha uma opção]</option>'],['<option value="1a">1a</option>'],['<option value="1b">1b</option>'],['<option value="1c">1c</option>']]; var bds_inst2 = [['<option>[Escolha uma opção]</option>'],['<option value="2a">2a</option>'],['<option value="2b">2b</option>'],['<option value="2c">2c</option>']]; var bds_inst3 = [['<option>[Escolha uma opção]</option>'],['<option value="3a">3a</option>'],['<option value="3b">3b</option>'],['<option value="3c">3c</option>']]; var bds_inst4 = [['<option>[Escolha uma opção]</option>'],['<option value="4a">4a</option>'],['<option value="4b">4b</option>'],['<option value="4c">4c</option>']]; function validaCombo(){ if ((document.getElementById('list_instance_1').value == '') || (document.getElementById('list_instance_2').value == '') || (document.getElementById('bd_inst1').value == '') || (document.getElementById('bd_inst2').value == '')){ alert("Selecione duas intâncias e dois bancos."); return false; } } function bd_inst(opcao){ switch(opcao){ case "instance1": //document.getElementById('bds_inst1').innerHtml = opcoes["valor1"]; add_option('bd_inst1',bds_inst1); break; case "instance2": //document.getElementById('bds_inst1').innerHtml = opcoes["valor2"]; add_option('bd_inst1',bds_inst2); break; case "instance3": //document.getElementById('bds_inst2').innerHtml = opcoes["valor3"]; add_option('bd_inst2',bds_inst3); break; case "instance4": //document.getElementById('bds_inst2').innerHtml = opcoes["valor4"]; add_option('bd_inst2',bds_inst4); break; } } function add_option(combo_name, bds){ var combo = document.getElementById(combo_name); combo.innerHTML = ""; for(var i=0; i< bds.length;i++){ var opt = document.createElement('option'); opt.value = bds[i]; opt.innerHTML = bds[i]; combo.appendChild(opt); } } </script> </head> <body> <form name="frm_comp" action="ok.htm" method="post" onSubmit="return validaCombo();"> <table border="0" align="center"> <tr> <td width="200px" align="center"> <h4>INSTÂNCIA</h4> <select id="list_instance_1" name="" size=1 onChange="bd_inst(this.value);" > <option>[Selecione uma instância]</option> <option value="instance1">Instância 1</option> <option value="instance2">Instância 2</option> </select> </td> <td width="200px" align="center"> <h4>INSTÂNCIA</h4> <select id="list_instance_2" name="" size=1 onChange="bd_inst(this.value);"> <option>[Selecione uma instância]</option> <option value="instance3">Instância 3</option> <option value="instance4">Instância 4</option> </select> </td> </tr> <tr> <td width="200px" align="center"> <h4>BANCO</h4> <select id="bd_inst1" name="" size=1> </select> </td> <td width="200px" align="center"> <h4>BANCO</h4> <select id="bd_inst2" name="" size=1> </select> </td> </tr> </table> <p> <table align="center"> <tr> <td> <input type="submit" value="Enviar"> </td> </tr> </table> </form> </body> </html>
Porém, a função validaCombo não exibe a msg se os dois combos de BANCO estiverem em branco. :/
O que pode estar acontecendo?
- Fórum WMO
- → Viewing Profile: Posts: Má =)
- Privacy Policy
- Regras ·