我是一名 JavaScript 初學者,我遇到了一個關于變數的問題。
我寫了這段代碼:
var acNo = document.getElementById("ac").value;
function doSomething(){
alert(acNo);
}
輸出是:undefined
但是當我這樣做時:
var acNo = 3
輸出為 3
Html 代碼:(這是一個非常大的專案,所以我不能分享太多代碼,但我分享的是與此腳本相關的 HTML 代碼)
<td>A/c</td>
<td> <input type="number" name="" id="ac"></td>
<td> <input type="number" name="" id="acHour"></td>
你能告訴我如何在只保留全域變數的同時修復它。
uj5u.com熱心網友回復:
嘗試在檔案完全加載后或在函式內定義 acNo。
解決方案1:
let acNo;
window.onload = () => {
acNo = document.getElementById("ac").value;
}
function doSomething() {
alert(acNo);
}
解決方案2:
funtion doSomething() {
alert(document.getElementById("ac").value)
}
uj5u.com熱心網友回復:
您可以通過打開瀏覽器的開發工具并document.getElementById在控制臺中運行來檢查這一點。
您將能夠看到有關元素的所有內容以及它具有的屬性。例如,您可能想要檢查innerHTML而不是value取決于您的元素型別。
uj5u.com熱心網友回復:
我認為該值僅在開始時設定,而不是在您doSomething稍后運行時設定。如果您想全域獲取值,請擁有一個全域變數并在呼叫時不斷更新它doSomething。
var acNo = document.getElementById("ac").value;
function doSomething(){
acNo = document.getElementById("ac").value;
alert(acNo);
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/449974.html
標籤:javascript html 变量 全局变量
上一篇:在回圈中創建變數(Python)
下一篇:從用戶輸入生成亂數
