[英]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;
......因為你傳遞this
為checkKey
。
如果要按名稱訪問表單字段,請使用name
屬性而不是id
屬性(盡管id
在許多瀏覽器中也適用)。
如果您的var globalVar;
在全局范圍內(在所有功能之外),則它是一個全局變量。 如果該var
語句在函數內部,則為局部變量。 您沒有給我們足夠的上下文來知道var
在哪里,但是如果它在全局范圍內,並且您成功設置了它的值,然后您對其進行了檢查,那么它將被設置。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.