繁体   English   中英

由另一个函数调用时,该函数无法正常工作

[英]Function works incorrectly when called by another function

在这里的第一篇文章。 我正在尝试为学校项目创建复活节计算器。 当在浏览器控制台上单独调用函数pasCalc(E)时,它效果很好。 但是,当我以html 格式键入年份时,所有日期均已关闭。

抱歉,如果这听起来像是个newb问题,但我不知道出什么问题了,我们将不胜感激,非常感谢您的宝贵时间! :)

 function start() { document.getElementById("orthodox").innerHTML = "Ορθόδοξο πάσχα:"; //var E = document.getElementById("inputfield").value; //console.log(E); var pasxa = pasCalc(document.getElementById("inputfield").value) console.log(pasxa); //console.log(pasxa[0] + " " + pasxa[1]); document.getElementById("orthodox").innerHTML += " " + pasxa; } function pasCalc(E) { //var E = 2018; var a = E % 19; var T = (8 + 11 * a) % 30; var month = "Mach"; var K = Math.floor((E / 100) - (E / 400) - 2); var iPanArx = 21 + (53 - T) % 30; if (iPanArx > 31) { var iPanArxM = iPanArx - 31; month = "April"; } else { var iPanArxM = iPanArx; } var iPanTel = iPanArxM + K; var Y = (E + Math.floor(E / 4) + iPanArx) % 7; var iPas = iPanTel + (7 - Y); if (iPas > 30 && month == "April") { month = "May"; var iPas = iPas - 30; } else if (iPas > 31 && month == "Marchυ") { month = "April"; var iPas = iPas - 31; } console.log(iPas + " " + month + " " + E); var arr = []; arr.push(iPas); arr.push(month); return arr; } 
 <div class="container align-center"> <h1>Easter Calculator</h1> <input id="inputfield" type="text" placeholder="Enter a Year..."> <button class="btn btn-primary" onclick="start();">Submit</button> <h5 id="orthodox">Orthodox Easter:</h5> <h5>Catholic Easter:</h5> </div> 

默认情况下,表单字段是字符串。 为了让Javascript知道它是一个整数,以便它可以与数字计算(例如日期的年部分)一起使用,请将其包装在对parseInt()的调用中

var pasxa = pasCalc(parseInt(document.getElementById("inputfield").value))

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM