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 947
- 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 ·



Postagens