程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> php+js+mysql設計的仿webQQ-<3>月份天數隨月份改變

php+js+mysql設計的仿webQQ-<3>月份天數隨月份改變

編輯:關於PHP編程

注冊時,在填寫生日的時候,月份的天數會隨著月份的改變而改變,這個小功能在很多的地方都用得到哦!

<5>月份天數隨月份改變

PHP代碼

[php]
<select name="month" id="month" onchange="monthDays(this.value);">    //onchange事件  
<?php 
for($i=1;$i<=12;$i++) 
    { 
        echo "<option value=".$i.">"; 
        echo $i; 
        echo "</option>"; 
    } 
?> 
</select>月 
<select name="day" id="day"> 
<?php 
for($i=1;$i<=31;$i++) 
    { 
        echo "<option value=".$i.">"; 
        echo $i; 
        echo "</option>"; 
    } 
?> 
</select>日 
<select name="month" id="month" onchange="monthDays(this.value);">    //onchange事件
<?php
for($i=1;$i<=12;$i++)
    {
  echo "<option value=".$i.">";
  echo $i;
  echo "</option>";
 }
?>
</select>月
<select name="day" id="day">
<?php
for($i=1;$i<=31;$i++)
    {
  echo "<option value=".$i.">";
  echo $i;
  echo "</option>";
 }
?>
</select>日


Js代碼

[javascript]
function monthDays(month) 
{    
var xmlhttp; 
if (window.XMLHttpRequest) 
  {// code for IE7+, Firefox, Chrome, Opera, Safari  
    xmlhttp=new XMLHttpRequest(); 
  } 
else 
  {// code for IE6, IE5  
    xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); 
  } 
xmlhttp.onreadystatechange=function() 
  { 
  if (xmlhttp.readyState==4 && xmlhttp.status==200) 
    {  
    if(month==2) 
          { 
             document.getElementById("day").length=0;     //先把月份天數的select的option清空  
             for(i=1;i<=29;i++) 
                { 
                   document.getElementById("day").options.add(new Option(i,i)); 
                } 
      } 
        else if(month==4||month==6||month==9||month==11) 
               { 
                  document.getElementById("day").length=0; 
                  for(i=1;i<=30;i++) 
                     { 
                        document.getElementById("day").options.add(new Option(i,i)); 
                     } 
               } 
        else 
          { 
              document.getElementById("day").length=0; 
                  for(i=1;i<=31;i++) 
                     { 
                        document.getElementById("day").options.add(new Option(i,i)); 
                     } 
          }      
          
    } 
  }  
xmlhttp.open("GET","index.php",true); 
xmlhttp.send(); 

function monthDays(month)

var xmlhttp;
if (window.XMLHttpRequest)
  {// code for IE7+, Firefox, Chrome, Opera, Safari
   xmlhttp=new XMLHttpRequest();
  }
else
  {// code for IE6, IE5
   xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
xmlhttp.onreadystatechange=function()
  {
  if (xmlhttp.readyState==4 && xmlhttp.status==200)
    {
 if(month==2)
          {
             document.getElementById("day").length=0;     //先把月份天數的select的option清空
             for(i=1;i<=29;i++)
                {
                   document.getElementById("day").options.add(new Option(i,i));
                }
   }
        else if(month==4||month==6||month==9||month==11)
               {
            document.getElementById("day").length=0;
                  for(i=1;i<=30;i++)
                     {
                        document.getElementById("day").options.add(new Option(i,i));
                     }
               }
        else
          {
              document.getElementById("day").length=0;
                  for(i=1;i<=31;i++)
                     {
                        document.getElementById("day").options.add(new Option(i,i));
                     }
          }  
  
    }
  }
xmlhttp.open("GET","index.php",true);
xmlhttp.send();
}
 
這種效果還是用到Ajax的局部刷新技術,歡迎大家交流學習。(未完待續)

 

摘自 wyzhangchengjin123

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved