我已查看此thread和this one,但这对我没有帮助。
我有一个ASP:CheckBox控件如下所示。
<asp:CheckBox ID="chbArchived" runat="server" Checked='<%# Bind("archived") %>' OnClick=changeExpirationDate() />
我的JavaScript如下:
<script type="text/javascript">
$(document).ready(function () {
//alert("got here");
$('.insDateTime').datetimepicker({
ampm: true
});
changeExpirationDate(){
var currentDate = new Date;
var futureDateTime = (currentDate.getMonth() + 4) + '/' + currentDate.getDate() + '/' + currentDate.getFullYear() + ' ' + formatAMPM(currentDate);
var expiredDateTime = (currentDate.getMonth() + 1) + '/' + currentDate.getDate() + '/' + currentDate.getFullYear() + ' ' + formatAMPM(currentDate);
var archivedCheckbox = document.getElementById('cphContent_fmvNewsEventList_chbArchived').checked;
if(archivedCheckbox == true)
{
document.getElementById('cphContent_fmvNewsEventList_txtExpirationDate').value = expiredDateTime;
}
else{
document.getElementById('cphContent_fmvNewsEventList_txtExpirationDate').value = futureDateTime;
}
};
function formatAMPM(date) {
var hours = date.getHours();
var minutes = date.getMinutes();
var ampm = hours >= 12 ? 'pm' : 'am';
hours = hours % 12;
hours = hours ? hours : 12; // the hour '0' should be '12'
minutes = minutes < 10 ? '0'+minutes : minutes;
var strTime = hours + ':' + minutes + ' ' + ampm;
return strTime;
};
});
</script>
问题是当我点击复选框时,我一直收到此JavaScript错误“Uncaught ReferenceError:changeExpirationDate is not defined”。任何建议/帮助都非常感谢。
答案 0 :(得分:1)
});
changeExpirationDate(){ <-- where is the function declaration?
var currentDate = new Date;
又名
function changeExpirationDate () {
答案 1 :(得分:1)
更改
changeExpirationDate(){
到
function changeExpirationDate(){
第一个使它看起来像你试图称之为;第二个定义它。
答案 2 :(得分:0)
好的,再看一次后,我发现这是一个非常愚蠢的错误。我在函数名称changeExpirationDate()之前忘记了“函数”,因此,它给了我这个错误。