我不明白这里发生了什么?有什么建议?这就发生在这一行: -
var explode = gregorianDate.split('-');
这是完整的功能。
function updateCalendarDay(){
if (document.getElementById('gregorianDateOutput') != null) {
var gregorianDate = document.getElementById('gregorianDateOutput').value;
}else{
var gregorianDate = null;
}
if(gregorianDate != ""){
var explode = gregorianDate.split('-');
var year = explode[0];
var month = explode[1];
var day = explode[2];
document.getElementById('month').value = month;
document.getElementById('year').value = year;
var ajax = new GLM.AJAX();
var url='calendarAjax.php?month='+month+'&year='+year+'&day='+day;
ajax.callPage(url, showSubscribeResult, "GET");
}
}
答案 0 :(得分:6)
正如@Jasper建议你可以分配空字符串,如果没有找到:
var gregorianDate = "";
而不是
var gregorianDate = null;
修改强>
您也可以按值检查:
if( gregorianDate )
并且由于Element value
属性始终返回&String;只有存在值时才会获得此