簡體   English   中英

javascript全局變量未定義

[英]javascript global variable undefined

我的javascript全局變量有問題,讓我們假設我有以下問題

var globalVar;

我有一個文本字段

<input type="text" id="myInput" onkeydown="checkKey(this)" onkeypress="checkKey(this)"/>

然后在功能Checkkey中,給它分配一些值:

globalVar=document.forms[0].elements("myInput").value;

我檢查了全局變量值是否已更改並發出警報。 當我嘗試在另一個函數中使用globalVar時,我發現它的值未定義。 另一個功能類似於:

param += globalVar;

form實例的elements屬性不是函數,而是對象。 采用

globalVar=document.forms[0].elements.myInput.value;

...要么

globalVar=document.forms[0].elements["myInput"].value;

...但更好的是,通過調用checkKey的方式,只需聲明一個名為input或其他任何參數的參數並使用

globalVar=input.value;

......因為你傳遞thischeckKey

如果要按名稱訪問表單字段,請使用name屬性而不是id屬性(盡管id在許多瀏覽器中也適用)。

如果您的var globalVar; 在全局范圍內(在所有功能之外),則它是一個全局變量。 如果該var語句在函數內部,則為局部變量。 您沒有給我們足夠的上下文來知道var在哪里,但是如果它在全局范圍內,並且您成功設置了它的值,然后您對其進行了檢查,那么它將被設置。

使用長格式的現場演示 | 使用參數進行現場演示

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM