javascript - 与输入计算作斗争

标签 javascript input calculation

嗨,我对 javascript 很陌生,并且正在努力让这段代码正常工作。因此,当我在输入数字后单击按钮时,什么也没有发生。你知道我在这里做错了什么吗?

HTML:

    <input type="text" id="eing1" placeholder=" z. B. 700&euro;" style="width:80px;">
    <input type="text" id="eing2" placeholder=" z. B. 30000&euro;" style="width:80px;">
    <input type="text" id="eing3" placeholder=" &empty; 225" style="width:80px;">
    <input id="button" type="button" value="Berechnen" onClick="ausgeben()">
   <p id="arbeitszeit"></p>
   <p id="produktivitaetssteigerung"></p>
   <p id="amortisationszeit"></p>

Javascript:

function ausgeben(){

    var kostentisch = parseInt(document.getElementById("eing1").value)
    var bruttogehalt = parseInt(document.getElementById("eing2").value)
    var arbeitstage = parseInt(document.getElementById("eing3").value)

    var stundenlohn = bruttogehalt/arbeitstage/8;
    var arbeitszeit = arbeitstage*8;
    var produktivitaetssteigerung = arbeitszeit*0.12;
    var amortisationszeit = kostentisch/(arbeitstage/(produktivitaetssteigerung*stundenlohn));

    document.getElementById("stundenlohn").innerHTML=tischsitzen + " Stunden";
    document.getElementById("produktivitaetssteigerung").innerHTML=armlehne + " Stunden";
    document.getElementById("amortisationszeit").innerHTML=stuhl + " Tage";
}

这里是 js-fiddle:https://jsfiddle.net/1ej6ezou/

最佳答案

如下所示绑定(bind) keyUp 监听器以获取更多信息,请查找下面的代码片段

var selectors = document.querySelectorAll("#eing1, #eing2, #eing3");

for (var i = 0; i < selectors.length; i++) {
    selectors[i].addEventListener('keyup', function(event) {

      event.preventDefault();
     if (event.keyCode == 13) {
     document.getElementById("button").click();
   }
    });
}

<div id="ergonomierechner">
		<p id="h1" style="text-align: center; font-size: 150%; font-weight: bold; margin-top: 5px;">Individueller Ergonomie-Rechner</p>
		
		<center><p id="text" >
			<span>Kosten f&uuml;r Sitz-Stehschreibtisch:	</span>
			<input type="text" id="eing1" placeholder=" z. B. 700&euro;" style="width:80px;">
			<span>Bruttogehalt inkl. 20% Lohnnebenkosten: </span>
			<input type="text" id="eing2" placeholder=" z. B. 30000&euro;" style="width:80px;">
			<span>J&auml;hrliche Arbeitstage: </span>
			<input type="text" id="eing3" placeholder=" &empty; 225" style="width:80px;">
			<input id="button" type="button" value="Berechnen" onClick="ausgeben();">
		</p></center>
		
		<div id="fehler"></div>
		
		<table style="width:100%">
		  <tr>
			<th>Arbeitszeit:</th>
			<th>Produktivit&auml;tssteigerung pro Tag (12&#037;):</th>
			<th>Amortisationszeit:</th>
		  </tr>
		  <tr style="text-align: center;">
			<td><p id="arbeitszeit"></p></td>
			<td><p id="produktivitaetssteigerung"></p></td>
			<td><p id="amortisationszeit"></p></td>
		  </tr>
		</table> 
	
	</div>
  
  <script>
  function ausgeben(){
		
		var kostentisch = parseInt(document.getElementById("eing1").value)
		var bruttogehalt = parseInt(document.getElementById("eing2").value)
		var arbeitstage = parseInt(document.getElementById("eing3").value)
		
		var stundenlohn = bruttogehalt/arbeitstage/8;
		var arbeitszeit = arbeitstage*8;
		var produktivitaetssteigerung = arbeitszeit*0.12;
		var amortisationszeit = kostentisch/(arbeitstage/(produktivitaetssteigerung*stundenlohn));

//Changes to be made here
		document.getElementById("arbeitszeit").innerHTML=arbeitszeit + " Stunden";
		document.getElementById("produktivitaetssteigerung").innerHTML=produktivitaetssteigerung + " Stunden";
		document.getElementById("amortisationszeit").innerHTML=amortisationszeit + " Tage";
	}
  </script>

关于javascript - 与输入计算作斗争,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42778542/

相关文章:

mysql - 预设值为="999"的输入标签插入MYSQL数据库失败

css - 样式化 HTML5 数字输入

python - 我如何总结 Django 模型的内容

javascript - 如何在 javascript 中更改特定的 tr bgcolor

css - ie 中 Bootstrap css 中的 Topbar 输入问题

javascript - 选中/取消选中所有子复选框 jquery bootstrap

php - 为什么我的变量在 TCPDF 中未定义?

regex - Scala:标记简单算术表达式

javascript - 无法读取 null 的属性 'value'

javascript - Highcharts 背景图片大小选项