gpt4 book ai didi

javascript - 在这种情况下如何访问javascript函数内的变量?

转载 作者:行者123 更新时间:2023-12-02 16:04:34 24 4
gpt4 key购买 nike

我正在访问 javascript 变量,但无法使用以下代码访问它。

<script type="text/javascript">
function msg1(a)
{
var1=a;

}

function msg2(b)
{
var2=b;

}
</script>

<input type="radio" name="people" onfocus="msg1(this.value);" value="2">
<input type="radio" name="rating" onfocus="msg2(this.value);" value="5">

<script type="text/javascript">
if(var1==2 && var2==5)
document.getElementById("scores").innerHTML='511';
</script>

但是,当我直接调用该函数时,代码会运行,而不是通过 onfocus 事件调用该函数。正在运行的代码是:-

<script type="text/javascript">
function msg1(a)
{
var1=a;

}

function msg2(b)
{
var2=b;

}
msg1(2);
msg2(5);
if(var1==2 && var2==5)
document.getElementById("scores").innerHTML='511';
</script>

我无法弄清楚不起作用的代码中的错误是什么。请推荐我。

最佳答案

这是一个时间问题。

  • 您尝试在页面加载时读取变量。
  • 当输入获得焦点时,您尝试设置变量。

由于在您尝试读取它们时尚未设置它们,因此您会收到错误。

你永远不会再尝试阅读它们。

您必须先设置它们,然后才能读取它们。

<小时/>

将用于测试变量值的逻辑移至更改变量的事件处理程序内。

您还应该在加载页面时声明它们(并可能为它们提供默认值)。否则,第一个事件处理程序将尝试设置其中一个,然后读取它们(此时其中一个将未声明,您仍然会收到引用错误)。

关于javascript - 在这种情况下如何访问javascript函数内的变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30893929/

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