ต้องการคำนวณ กี่ปี กี่เดือน กี่วัน จากการกรอก textbox 2 ตัว ไปแสดงใน texbox ตัวที่ 3

ถาม-ตอบ แนะนำไอเดียว โค้ดตัวอย่าง แนวทาง วิธีแก้ปัญหา ต้องการคำนวณ กี่ปี กี่เดือน กี่วัน จากการกรอก textbox 2 ตัว ไปแสดงใน texbox ตัวที่ 3

ต้องการคำนวณ กี่ปี กี่เดือน กี่วัน จากการกรอก textbox 2 ตัว ไปแสดงใน texbox ตัวที่ 3

รูปแบบการกรอก ช่องแรกเลือกเป็น dd/mm/yyyy ช่องที่ 2 เลือกเป็น dd/mm/yyyy และช่องที่ 3 แสดงเป็น  ...ปี ...เดือน ...วัน

รบกวนชี้แนะด้วยค่ะ

 


Green Tree 183.88.238.xxx 03-08-2018 17:14:49

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

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


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


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

 ความคิดเห็นที่ 1
ตูตัวอย่างโค้ดต่อไปนี้เป็นแนวทาง

<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width">
  <title>JS Bin</title>
  <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/flatpickr/dist/flatpickr.min.css">
</head>
<body>

  <div>
    <input id="dateA" class="date_selector" type="text" value="">
    <input id="dateB" class="date_selector" type="text" value=""><br>
	<input type="text" id="show_data_date">
  </div>

<script src="https://unpkg.com/jquery@3.3.1/dist/jquery.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/flatpickr"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.22.2/moment.min.js"></script>
<script type="text/javascript">
$(function(){
	
	// https://flatpickr.js.org/events/
	// https://momentjs.com/docs/#/manipulating/subtract/
	// https://momentjs.com/docs/#/displaying/difference/
	
     $(".date_selector").flatpickr({
		dateFormat: "d/m/Y",
		onChange: function(selectedDates, dateStr, instance) {
			console.log(selectedDates);
			/*var _dayA = moment("2018-08-03");
			var _dayB = moment("2013-07-01");*/
			var _dayA = moment($("#dateA").val(),'DD/MM/YYYY');
			var _dayB = moment($("#dateB").val(),'DD/MM/YYYY');
			var _yDiff = _dayA.diff(_dayB, 'years');
			_dayA.subtract(_yDiff, 'years');
			var _mDiff = _dayA.diff(_dayB, 'months')
			_dayA.subtract(_mDiff, 'months');
			var _dDiff = _dayA.diff(_dayB, 'days')
			var finalStrText = _yDiff+' ปี '+_mDiff+' เดือน '+_dDiff+' วัน ';
			$("#show_data_date").val(finalStrText);
			console.log(finalStrText);
			console.log(_yDiff+' ปี ');
			console.log(_mDiff+' เดือน ');
			console.log(_dDiff+' วัน ');			
		}
	 });
});
</script>
</body>
</html>



ตัวอย่าง




ninenik 223.24.63.xxx 04-08-2018
 ความคิดเห็นที่ 2
ขอบคุณ คุณ Ninenik  นะค่ะ 

ตัวอย่างที่คุณให้มันดีมากเลยค่ะ 


Green Tree 1.47.200.xxx 04-08-2018 21:22






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