答案 0 :(得分:1)
如果未选择任何选项select[name=day]
,则$("select[name=day]").val()
为null
,您会收到错误,因为我们无法读取null的属性'length'。我们可以通过多种方式解决它,但有一种方法可以解决它:
var select_day = $("select[name=day]").val() || '';
var select_month = $("select[name=month]").val() || '';
var select_year = $("select[name=year]").val() || '';
答案 1 :(得分:1)
问题是,在您选择的每个change
事件中,您都试图获取所有值。例如,如果您仅更改year
,则month
和day
未定义。然后你试图操纵一天 - select_day.length
- 取其长度。你可以使用建议的palash或检查存在和类型
if (select_day && typeof select_day === 'string' ) ...
仅当select_day
为非空字符串时才会出现这种情况。