js日期、星座的级联显示代码

  js 代码

  

复制代码 代码如下:

  function birthdayOnchange(obj) {

  var year = $("<%= DDL_Year.ClientID%>").value;

  if (year == "year")

  return;

  else

  year = parseInt(year, 10);

  var month = $("<%=DDL_Month.ClientID%>").value;

  if (month == "month")

  return;

  else

  month = parseInt(month, 10);

  var day = $("<%=DDL_Day.ClientID%>").value;

  var wholeday = getDays(year, month);

  if (1) {

  var options = $("<%=DDL_Day.ClientID%>").options;

  for (var i = 1; i <= wholeday; i++) {

  var j = i.toString();

  j = j.length == 1 ? "0" + j : j;

  options.length = i + 1;

  options[i].value = j;

  options[i].text = j;

  if (day <= wholeday && i == day) {

  options[i].selected = true;

  }

  }

  }

  }

  function getDays(year, month) {

  var dayarr = new Array(31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);

  if (month == 2) {

  if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0 || year < 1900)

  return 29;

  else

  return dayarr[month - 1];

  }

  else {

  return dayarr[month - 1];

  }

  }

  function adjustAstro() {

  var v_astro = getAstro($("<%=DDL_Month.ClientID%>").value, $("<%=DDL_Day.ClientID%>").value);

  $("<%=astro.ClientID %>").options[0].text = v_astro;

  }

  function getAstro(v_month, v_day) {

  v_month = parseInt(v_month, 10)

  v_day = parseInt(v_day, 10);

  if ((v_month == 12 && v_day >= 22)

  || (v_month == 1 && v_day <= 20)) {

  return "魔羯座";

  }

  else if ((v_month == 1 && v_day >= 21)

  || (v_month == 2 && v_day <= 19)) {

  return "水瓶座";

  }

  else if ((v_month == 2 && v_day >= 20)

  || (v_month == 3 && v_day <= 20)) {

  return "双鱼座";

  }

  else if ((v_month == 3 && v_day >= 21)

  || (v_month == 4 && v_day <= 20)) {

  return "白羊座";

  }

  else if ((v_month == 4 && v_day >= 21)

  || (v_month == 5 && v_day <= 21)) {

  return "金牛座";

  }

  else if ((v_month == 5 && v_day >= 22)

  || (v_month == 6 && v_day <= 21)) {

  return "双子座";

  }

  else if ((v_month == 6 && v_day >= 22)

  || (v_month == 7 && v_day <= 22)) {

  return "巨蟹座";

  }

  else if ((v_month == 7 && v_day >= 23)

  || (v_month == 8 && v_day <= 23)) {

  return "狮子座";

  }

  else if ((v_month == 8 && v_day >= 24)

  || (v_month == 9 && v_day <= 23)) {

  return "处女座";

  }

  else if ((v_month == 9 && v_day >= 24)

  || (v_month == 10 && v_day <= 23)) {

  return "天秤座";

  }

  else if ((v_month == 10 && v_day >= 24)

  || (v_month == 11 && v_day <= 22)) {

  return "天蝎座";

  }

  else if ((v_month == 11 && v_day >= 23)

  || (v_month == 12 && v_day <= 21)) {

  return "射手座";

  }

  return "";

  }

  html

  

复制代码 代码如下:

  <DIV>出生日期:</DIV>

  <DIV>

  <asp:DropDownList ID="DDL_Year" runat="server"  onchange="birthdayOnchange(this);"></asp:DropDownList> 年

  <asp:DropDownList ID="DDL_Month" runat="server"  onchange="birthdayOnchange(this);adjustAstro();"></asp:DropDownList> 月

  <asp:DropDownList ID="DDL_Day" runat="server" onchange="adjustAstro();"></asp:DropDownList> 日

  </DIV>

  <DIV>星座:</DIV>

  <DIV>

  <SELECT id=astro disabled name=astro runat="server">

  <OPTION selected>处女座</OPTION>

  </SELECT>

  </DIV>