我有一個輸入日期的文本框。我已經添加了複選框todaysDate4SD和todaysDate4ED,以便當用戶希望這些文本框之一是今天的日期時,他們可以點擊相應的複選框爲了填充它們(他們不需要填寫文本框今天的日期)。我在populateTodaysDate()函數中放置了一個alert,所以我知道它沒有到達那裏。當談到JS時,我是一個新手,所以我不確定什麼語法錯誤,它不是調用這個函數。這個調用html函數的javascript函數有什麼問題
<div id="form">
<form>
<p class="field">Start Date:<input type="text" id="start" name="start" /></p>
<p class="field"><input type="checkbox" id="todaysDate4SD" name="todaysDate4SD"
onclick="populateTodaysDate(todaysDate4SD,start);" />
<p class="field">End Date:<input type="type" id="end" name="end" /></p>
<p class="field"><input type="checkbox" id="todaysDate4ED" name="todaysDate4ED"
onclick="populateTodaysDate(todaysDate4ED,end);" />
<p class="field"><input type="checkbox" id="includeEndDate" name="includeEndDate" checked="true" />
Include the end date in the calculation</p>
<p class="submitbttn"><input type="button" value="Submit" onclick="calculate();" /></p>
</form>
onclick populateTodaysDate調用中的參數(即todaysDate4ED,end)是字符串。我試圖傳入ID的,所以在函數中我可以使用document.getElementById(ID)...我在實際元素之前嘗試通過(通過將此document.getElem ...在onclick調用中,但didn也沒有工作)。
以下是我相信不是因爲某種原因而被調用的函數。它位於html頁面頭部的腳本標記中。
function populateTodaysDate(checkbox, dateBox) {
alert("I'm here!")
if(checkBox.checked) {
dateBox.value = dateToString(new Date()).
} else {
dateBox.value = "";
}
}
警報並不重要,只是加入,看看我其實是在進入此功能...
...如果任何人希望看到dateToString ......不應該是必要的(99.98%肯定不是問題的所在)
function dateToString(d1) {
var curr_year = d1.getFullYear();
var curr_month = d1.getMonth() + 1; //Months are zero based
if (curr_month < 10) {
curr_month = "0" + curr_month;
}
var curr_date = d1.getDate();
if (curr_date < 10) {
curr_date = "0" + curr_date;
}
return curr_month + "/" + curr_date + "/" + curr_year;
}
添加您的js代碼 –
@yvytty那就是我希望它是調用函數的名稱,但事實並非如此。警報會讓我知道它正在進入。我將在第二個 – Nick
中添加我的js代碼,我建議你用螢火蟲檢查一些錯誤 –