gpt4 book ai didi

Javascript 事件在加载时不起作用

转载 作者:行者123 更新时间:2023-12-02 18:51:59 29 4
gpt4 key购买 nike

我有一个 JavaScript 事件,它根据 2 个变量(价格和产品使用天数)计算某物的价格。该函数在 2 个输入元素上调用,如下所示:onkeyup=calc(this.form),这就像一个魅力。

我已将数据库与这两个值连接起来,并将它们回显为两个输入元素的值(这是成功的),并添加此以使该功能在页面加载时发生:

<script type="text/javascript">
window.onload = function()
{
calc(form);
};
</script>

问题是,直到我对输入元素之一执行某些操作后,计算结果才会显示。

现场版本可以在这里看到:http://www.websane.nl/macbook/opgeslagen.php?id=1

你知道问题出在哪里吗?

最佳答案

问题是语句 calc(form); 中的 form 没有任何东西——它是未定义的。这是有道理的——不仅 HTML 文档中可以有多种表单(因此它永远不会自动工作),而且您永远不会将 form 变量绑定(bind)到其中任何一个表单。要获取对特定表单的引用,您可以使用多种技术:

  • document.getElementsbyTagName('form')[0]
  • document.forms[0]
  • document.forms.formname
  • document.getElementById('theFormId')

onload 事件中的 form 替换为上述内容之一,这样就可以正常工作了。可能还有许多其他方法来获取对表单的引用。

关于Javascript 事件在加载时不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15725704/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com