[英]radio button return undefined value in javascript
單選按鈕返回未定義的值。 我的html代碼是:
<input name="start" value="" id="start1" type="radio">
<label for="start1">date</label>
JavaScript的:
<script type="text/javascript">
(function() {
if (document.getElementById('start1').checked) {
var CurrentDate = new Date();
CurrentDate.setMonth(CurrentDate.getMonth() + 1);
}
});
</script>
當我檢查單選按鈕start1時,它將在當前月份增加1個月。 但是我的console.log(CurrentDate)顯示了未定義的變量名。 如何顯示結果?
您沒有調用包裝函數
(function () { document.getElementById('start1').addEventListener('change', () => { let CurrentDate = new Date(); CurrentDate.setMonth(CurrentDate.getMonth() + 1); dateEl.innerHTML = CurrentDate }) })();
<input name="start" value="" id="start1" type="radio"> <label for="start1">date</label> <div id="dateEl"></div>
您擁有的是立即調用的函數表達式 ,該函數表達式在定義后立即運行-因此它將在您甚至沒有機會單擊單選按鈕之前運行。
您需要在單選按鈕上附加一個事件偵聽器,以便在單擊(或更改)單選按鈕時運行功能。
這將為您工作。
簡單的JavaScript-
function check() { if (document.getElementById('start1').checked) { var CurrentDate = new Date(); CurrentDate.setMonth(CurrentDate.getMonth() + 1); document.getElementById("dateDisplay").innerHTML = ""+CurrentDate; } };
<input name="start" value="" id="start1" type="radio" oninput="check()"> <div id="dateDisplay"></div>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.