Devo criar em switch case um programa que a partir de um menu, o usuário ao colocar um número correspondente a comida escolhida, apareça uma janela informando qual a comida escolhida. Eis o código fonte:
<html>
<head>
<meta charset="UTF-8">
<title></title>
<script type="text/javascript">
function final(){
var A =document.form.A.value;
document.form.A.value = A ;
switch(A){
case 1:
alert("Você escolheu arroz");break;
case 2:
alert("Você escolheu feijão");break;
case 3:
alert("Você escolheu carne assada");break;
case 4:
alert("Você escolheu bife a milanesa");break;
case 5:
alert("Você escolheu frango xadrez");break;
default
alert("jbdjs");
}
}
</script>
</head>
<body>
<p>Menu:<br>
1-arroz<br>
2-feijão<br>
3-carne assada<br>
4-bife a milanesa<br>
4-frango xadrez</p>
<form method="post" name="form" action="Q8.html">
Digite o número correspondente a comida escolhida :<input type=number name="A">
<br>
<input type="button" onclick="final()" value="Após digitar os números, clique aqui">
</form>
</body>
</html>
Para pegar o valor do input utilize: var A = document.getElementById("numero").value;
O input precisará de um Id, neste caso é “numero”: <input type="number" id="numero">
Apesar de ser um input “number”, o valor obtido será do tipo string.
Você pode utilizar o switch com o valor do tipo string, para isso bastaria deixar assim:
switch (A) {
case "1":
alert("Você escolheu arroz");
break;
case "2":
alert("Você escolheu feijão");
break;
case "3":
alert("Você escolheu carne assada");
break;
case "4":
alert("Você escolheu bife a milanesa");
break;
case "5":
alert("Você escolheu frango xadrez");
break;
default:
alert("Número inválido, digite um dos números do menu.");
}
Note que os números estão entres aspas.
Mas o aconselhável é transformar o tipo da variável de “string” para “number”: var A = parseInt(document.getElementById("numero").value);
Lembre de retirar as aspas duplas no “switch”.
Haviam alguns outros erros, fiz algumas modificações e o código completo está abaixo:
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<h2>Menu:</h2>
<ol>
<li>Arroz</li>
<li>Feijão</li>
<li>Carne Assada</li>
<li>Bife a Milanesa</li>
<li>Frango Xadrez</li>
</ol>
<form>
<label for="numero">Digite o número correspondente a comida escolhida:</label> <br>
<input type="number" id="numero"> <br> <br>
<input type="button" onclick="escolheu()" value="Após digitar os números, clique aqui">
</form>
<script>
function escolheu() {
var A = parseInt(document.getElementById("numero").value);
// alert(typeof(A));
switch (A) {
case 1:
alert("Você escolheu arroz");
break;
case 2:
alert("Você escolheu feijão");
break;
case 3:
alert("Você escolheu carne assada");
break;
case 4:
alert("Você escolheu bife a milanesa");
break;
case 5:
alert("Você escolheu frango xadrez");
break;
default:
alert("Número inválido, digite um dos números do menu.");
}
}
</script>
</body>
</html>