Я делаю интерактивное приложение с текстовым полем, чтобы практиковать javascript, но я нахожусь для проверки, что случай не отображает текст innerHTML, хотя остальная часть циклов функции. text.innerHTML работает во всех остальных случаях, я что-то упустил?innerHTML failing on case
Javascript
function getNum(input){
if (isNaN(input)) {
oldstate = state-1;
state = 33;
console.log("Loading error Message...");
act();
}
else{return(parseInt(input, 10));}
}
function act(){
console.log("Case: "+state);
input = inputf.value;
inputf.value="";
switch(state){
case 0:
name = input;
text.innerHTML = "Well, hello there, "+name+"! Nice to meet you. What's your age?";
break;
case 1:
text.innerHTML = "Loading...";
age = getNum(input);
text.innerHTML = "So, "+name+" you are "+age+" years old!";
break;
case 33:
text.innerHTML = "That is NOT a number! Hit Submit to Return.";
console.log("Error Successfully loaded!");
state = oldstate;
break;
}
state=+1;
}
function getStr(input){
}
Вот мой HTML с текстового поля идентификаторов. Любые предложения по оптимизации также будут оценены.
HTML
<!DOCTYPE html>
<html>
<head>
<title>titles are lame</title>
<link/>
<link rel="stylesheet" type="text/css" href="stylesheet.css">
<script type="text/javascript" src="script.js"></script>
<script></script>
</head>
<body>
<div id="wrapper"><div id="text">First, let's have your name.</div>
<br>
<input type='text' id="input"><input type="submit"id="submit" onclick="act()">
</div>
<script>
var state = 0;
var inputf = document.getElementById("input");
var text = document.getElementById('text');
var input, name, age,oldstate;
document.getElementById("input").addEventListener("keydown", function(e) {
// Enter is pressed
if (e.keyCode == 13) { act(); }
}, false);
</script>
</body>
</html>
если вы нажмете на 'enter' он будет работать ... так, что является проблема? – lolo
Для меня ошибка «это НЕ число» не показывает, если вы отлаживаете и не указываете числовое значение при запросе на возраст. Вместо этого он подпрыгнет и скажет, что вам неизвестно лет. Предполагается, что он допустил ошибку. – Signify