ถามเรื่องการคำนวนอายุค่ะ

ถาม-ตอบ แนะนำไอเดียว โค้ดตัวอย่าง แนวทาง วิธีแก้ปัญหา ถามเรื่องการคำนวนอายุค่ะ

ถามเรื่องการคำนวนอายุค่ะ
รบกวนสอบถามเรื่องการคำนวนอายุจาก วัน เดือน ปีเกิด คือตอนนี้คำนวนอายุจากวัน เดือน ปีเกิดได้แล้วค่ะ และต้องการทราบว่า วันที่ตายจะมีอายุกี่ปี เช่น เกิดปี พ.ศ. 2498 อายุ 60 ปี และตายปี พ.ศ. 2568 ซึ่งจะอายุ 70 ปี ต้องการให้พอเลือกวันที่ตายอายุเปลี่ยนเป็น 70 ปี ต้องทำยังไงค่ะ 
<script type="text/javascript">
$(function(){
 
    $("#birthday").datetimepicker
	({
        format:'d-m-Y',  // กำหนดรูปแบบวันที่ ที่ใช้ เป็น 00-00-0000
        lang:'th',  // แสดงภาษาไทย
        yearStart:1904,
		yearEnd:1954,  // ช่วงเลือกปีเริ่มต้น ใช้ ค.ศ.
        yearOffset:543, // ใช้ปี พ.ศ. บวก 543 เพิ่มเข้าไปในปี ค.ศ
		timepicker:false,  // กำหนด ไม่แสดงตัวเลือกเวลา
        onSelectDate:function(){  // ถ้าเลือกวันแล้ว 
    $("#birthday").datetimepicker('hide'); // ให้ซ่อน datetimepicker
        },       
    });
//    
    $("#birthday").on("change",function(){
        var dayBirth=$(this).val();
        var getdayBirth=dayBirth.split("-");
        var YB=getdayBirth[2]-543;
        var MB=getdayBirth[1];
        var DB=getdayBirth[0];
        
		var setdayBirth=moment(YB+"-"+MB+"-"+DB);  
        var setNowDate=moment();
        var yearData=setNowDate.diff(setdayBirth, 'years', true); // ข้อมูลปีแบบทศนิยม
        var yearFinal=Math.round(setNowDate.diff(setdayBirth, 'years', true),0); // ปีเต็ม
        var yearReal=setNowDate.diff(setdayBirth, 'years'); // ปีจริง
        var monthDiff=Math.floor((yearData-yearReal)*12); // เดือน
        var str_year_month=yearReal+" ปี "+monthDiff+" เดือน"; // ต่อวันเดือนปี
        $("#age").val(str_year_month);
       
	    var moneyData=0;
        if(yearData>=90){
            moneyData=1000;
        }else if(yearData>=80){
            moneyData=800;
        }else if(yearData>=70){
            moneyData=700;
        }else if(yearData>=60){
            moneyData=600;
        }else{
	       alert("ผู้สูงอายุต้องอายุตั้งแต่ 60 ขึ้นไปกรุณากรอกใหม่อีกครั้ง !");	
        }
        $("#money").val(moneyData);
    });  
});

$(function() {
	  $( "#datedead" ).datetimepicker
	  ({
        format:'d-m-Y',  // กำหนดรูปแบบวันที่ ที่ใช้ เป็น 00-00-0000
        lang:'th',  // แสดงภาษาไทย
        yearStart:2015,  // ช่วงเลือกปีเริ่มต้น ใช้ ค.ศ.
		yearEnd:2035,  
        yearOffset:543, // ใช้ปี พ.ศ. บวก 543 เพิ่มเข้าไปในปี ค.ศ
		//maxDate: '-1Y', // เห็น ว ด ป ถึงแค่ปัจจุบัน ไม่เกินปันจุบัน
		timepicker:false,  // กำหนด ไม่แสดงตัวเลือกเวลา
        onSelectDate:function(){  // ถ้าเลือกวันแล้ว 
        $("#datedead").datetimepicker('hide');  // ให้ซ่อน datetimepicker
	    },       
    });
	var nowSelect=$("select[name='p_status'] option:selected").val();
    if(nowSelect=='มีชีวิตอยู่'){
       // alert("ผู้รับเบี้ยยังชีพไม่แสดงตน !");
        $("#datedead").prop("disabled","disabled");
    }else{
        $("#datedead").prop("disabled","");
    }
    $("select[name='p_status']").on("change",function(){
        var nowSelect=$("select[name='p_status'] option:selected").val();
        if(nowSelect=='มีชีวิตอยู่'){
            //alert("ผู้รับเบี้ยยังชีพไม่แสดงตน !");
            $("#datedead").prop("disabled","disabled");
        }else{
            $("#datedead").prop("disabled","");
	
        }        
    });

});   
</script>    



<tr valign="baseline">
      <td align="right" nowrap="nowrap" bgcolor="#FFCCCC">วัน/เดือน/ปีเกิด ผู้สูงอายุ :</td>
      <td bgcolor="#FFCCCC"><input type="type" name="p_birthday" id="birthday" readonly size="15"  value="<?php echo htmlentities( $new_formatDateTh, ENT_COMPAT, 'utf-8'); ?>">
      <tr>

      <td align="right" nowrap="nowrap" bgcolor="#FFCCCC">  อายุจริง : </td> 
      <td bgcolor="#FFCCCC"><input type="text" name="age" id="age" size="7" readonly value="<?php echo htmlentities($row_Recordset1['age'], ENT_COMPAT, 'utf-8'); ?>"></td>
      </tr>
   
    <tr valign="baseline">
      <td align="right" nowrap="nowrap" bgcolor="#FFCCCC">จำนวนเงิน :</td>
      <td bgcolor="#FFCCCC"><input name="p_money" type="text" id="money" value="<?php echo htmlentities($row_Recordset1['p_money'], ENT_COMPAT, 'utf-8'); ?>" size="7" readonly /> บาท</td>
    </tr>

วันที่ตาย ****

 <tr valign="baseline" id="deadDate">
<td align="right" nowrap="nowrap" bgcolor="#FFCCCC">วันที่ตาย  :</td>
      <td bgcolor="#FFCCCC"><input type="text" name="p_dead" id="datedead" readonly size="15" value="<?php echo htmlentities($new_deadDate, ENT_COMPAT, 'utf-8'); ?>"/></td>
    </tr>


Jikko 20-01-2015 17:24:58

คำแนะนำ และการใช้งาน

สมาชิก กรุณา ล็อกอินเข้าระบบ เพื่อตั้งคำถามใหม่ หรือ ตอบคำถาม สมาชิกใหม่ สมัครสมาชิกได้ที่ สมัครสมาชิก


  • ถาม-ตอบ กรุณา ล็อกอินเข้าระบบ
  • เปลี่ยน


    ( หรือ เข้าใช้งานผ่าน Social Login )

 ความคิดเห็นที่ 1
    $("#datedead").on("change",function(){
        var dayBirth=$("#birthday").val();
        var getdayBirth=dayBirth.split("-");
        var YB=getdayBirth[2]-543;
        var MB=getdayBirth[1];
        var DB=getdayBirth[0];
		
		var dayDead=$(this).val();		
        var getdayDead=dayDead.split("-");
        var YD=getdayDead[2]-543;
        var MD=getdayDead[1];
        var DD=getdayDead[0];		
        
		var setdayBirth=moment(YB+"-"+MB+"-"+DB);  
        var setNowDate=moment(YD+"-"+MD+"-"+DD);
        var yearData=setNowDate.diff(setdayBirth, 'years', true); // ข้อมูลปีแบบทศนิยม
        var yearFinal=Math.round(setNowDate.diff(setdayBirth, 'years', true),0); // ปีเต็ม
        var yearReal=setNowDate.diff(setdayBirth, 'years'); // ปีจริง
        var monthDiff=Math.floor((yearData-yearReal)*12); // เดือน
        var str_year_month=yearReal+" ปี "+monthDiff+" เดือน"; // ต่อวันเดือนปี
        $("#age").val(str_year_month);
       
//	    var moneyData=0;
//        if(yearData>=90){
//            moneyData=1000;
//        }else if(yearData>=80){
//            moneyData=800;
//        }else if(yearData>=70){
//            moneyData=700;
//        }else if(yearData>=60){
//            moneyData=600;
//        }else{
//	       alert("ผู้สูงอายุต้องอายุตั้งแต่ 60 ขึ้นไปกรุณากรอกใหม่อีกครั้ง !");	
//        }
//        $("#money").val(moneyData);
    });  

 


ninenik 21-01-2015
 ความคิดเห็นที่ 2
ขอบคุนมากนะค่ะ ได้แลั้ว เว็บนี้ดีจิงๆช่วยได้มากๆ งานผ่านเพราะเว็บนี้เลยขอบคุนมากจิงๆค่ะ ไม่ค่อยเก่งเกี่ยวกับโค้ด Ninenik


jikko 21-01-2015 12:39






เว็บไซต์ของเราให้บริการเนื้อหาบทความสำหรับนักพัฒนา โดยพึ่งพารายได้เล็กน้อยจากการแสดงโฆษณา โปรดสนับสนุนเว็บไซต์ของเราด้วยการปิดการใช้งานตัวปิดกั้นโฆษณา (Disable Ads Blocker) ขอบคุณครับ