Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 支付计算器,但什么也没发生_Javascript_Html - Fatal编程技术网

Javascript 支付计算器,但什么也没发生

Javascript 支付计算器,但什么也没发生,javascript,html,Javascript,Html,我为我父亲的园林绿化公司工作,我想做一个非常简单的计算器,计算我所提供的工作所欠的钱。我为这个目的编造了一些东西,但我真的不知道我做错了什么,有人能帮我修复它吗,我确信它确实很简单,我就是找不到 var xy=3//在这里输入码数 var xb=1//在这里输入虚张声势的次数 var xn=2//在这里输入newbern完成的次数 变量y=5; var b=25; var n=15; var pay=y*xy+b*xb+n*xn; getElementById(“显示”).innerHTML

我为我父亲的园林绿化公司工作,我想做一个非常简单的计算器,计算我所提供的工作所欠的钱。我为这个目的编造了一些东西,但我真的不知道我做错了什么,有人能帮我修复它吗,我确信它确实很简单,我就是找不到


var xy=3//在这里输入码数
var xb=1//在这里输入虚张声势的次数
var xn=2//在这里输入newbern完成的次数
变量y=5;
var b=25;
var n=15;
var pay=y*xy+b*xb+n*xn;
getElementById(“显示”).innerHTML=pay;
工资计算器


getElementById
前面加
文档。
因为它是
文档
对象上的一个方法

document.getElementById(“显示”);

在加载整个页面之前,脚本正在运行。当它运行时,没有要更新的“Display”元素。你需要在它存在后更新它。您的浏览器控制台将显示错误信息。

您的代码有两个问题:

  • “NullReference:reference not found”如果将
    标记放置在
    ..
    中,则需要一个
    事件侦听器来检查是否加载了DOM。您可以使用类似的
    eventListener
    来实现这一点
  • “输入错误”调用
    document.getElementById(“显示”)时忘记了
    文档。

工资计算器
常量设置=()=>{
设xy=3;//此处输入码数
设xb=1;//在此处输入虚张声势的次数
设xn=2;//输入newbern在此处完成的次数
设y=5;
设b=25;
设n=15;
固定薪酬=y*xy+b*xb+n*xn;
document.getElementById(“Display”).innerHTML=pay;
}
window.addEventListener(“加载”,设置);


您需要
document.getElementById
。阅读文档,除非数据跨越站点,否则你不能受到XSS攻击,而事实并非如此<代码>innerText
innerHTML
在这里很可能可以互换。我觉得自己像个白痴,是的,但最好不要使用它。:)我对这个(否则是正确的)答案犹豫不决,因为我认为在这样的背景下谈论XSS似乎有点过火——OP显然是严格为自己的个人用途而构建的,而不是为了任何与生产部署或在这样的漏洞可能暴露关键数据的背景下有点类似的东西。在任何情况下,使用更为普遍接受的XSS定义都将大大有助于解决这一问题,而这里的定义暗示XSS是对服务器本身的攻击,而事实上,它通常是对易受攻击站点的最终用户的攻击。考虑到这里的讨论,我编辑了(a)的答案通过删除无关的指导,更多地关注手头问题的解决方案,(b)提供一个与OP的具体情况更直接相关的说明。我不认为这一定是错误的,但这并不是OP目前所经历的错误的解决方案。我看到这个答案在发布后立即被否决了两次。这与其说是一个答案,不如说是一个评论,但它并没有错,所以我把它投了上去,以补偿一点所有愤怒的下层选民。@JeremyThille我没有投反对票,但我们永远不应该认为是恶意的。没有证据表明选民们很生气。首先,我还不能发表评论。不管怎样,可能还有其他问题在手,但即使这些问题已经解决,它仍然无法工作的原因,我给。问题只是问为什么它不起作用。